[С++] прочитать значение по hex адресу в памяти

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by K07TyaN, 27 Jun 2008.

  1. K07TyaN

    K07TyaN New Member

    Joined:
    18 Aug 2007
    Messages:
    9
    Likes Received:
    3
    Reputations:
    0
    Нужно прочитать значение по hex адресу в памяти!!! напишите плз небольшой исходник!
     
  2. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,021
    Likes Received:
    1,200
    Reputations:
    327
    DWORD dwAddr = 0x12345678;
    DWORD rc;
    BYTE buffer[1024];
    HANDLE hProcess = OpenProcess(PROCESS_VM_READ,0,GetCurrentProcessId());

    ReadProcessMemory(hProcess, (LPCVOID)dwAddr, (LPVOID)buffer, 1024, &rc);
     
    3 people like this.
  3. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    Мда... чтобы прочитать значение надо знать его тип. Обязательно.

    очередное "Хочу то не знаю что". Чувак, оно тебе не нужно.
     
    1 person likes this.
  4. K07TyaN

    K07TyaN New Member

    Joined:
    18 Aug 2007
    Messages:
    9
    Likes Received:
    3
    Reputations:
    0
    Мне НУЖНО учится! Ты прям сразу гуру стал???? =)
     
    1 person likes this.
  5. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    Ты читать умеешь, картонная башка?

    Перечитай мое предыдущее сообщение.
    Чтобы получить значение по адресу, надо знать его тип.
     
  6. Jes

    Jes Elder - Старейшина

    Joined:
    16 Apr 2007
    Messages:
    370
    Likes Received:
    391
    Reputations:
    34
    простите что вмешиваюсь , но разве sn0w не дал наиболее полный ответ на этот вопрос?(независимо от типа и размера)
     
  7. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    Неа... он читает массив байт, а неизвестно, что там лежит на самом деле то.
     
  8. Novi4ek

    Novi4ek New Member

    Joined:
    16 Jun 2008
    Messages:
    12
    Likes Received:
    3
    Reputations:
    -5
    А почему нельзя просто memcpy?
     
  9. Jes

    Jes Elder - Старейшина

    Joined:
    16 Apr 2007
    Messages:
    370
    Likes Received:
    391
    Reputations:
    34
    ->Неа... он читает массив байт, а неизвестно, что там лежит на самом деле то.

    ну а что?)
    какоето
    int - значит нужны первые четыре байта , указатель тоже
    long - 8
    Строка? - сначала и пока на нулевой байт не наткнемся
    итп...

    нечто большее уже врятли похоже на 'значение'
     
    2 people like this.
  10. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    Мыслишь терминами C, а тут же C++ =)
     
    1 person likes this.
  11. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,021
    Likes Received:
    1,200
    Reputations:
    327
    чтоб не возникло исключения если с адреса нельзя прочитать данные