Функция ReadProcessMemory


Функция ReadProcessMemory  читает данные из области памяти в заданном процессе. Вся область, которая читается, должна быть доступна, или операция завершается ошибкой.

Синтаксис

BOOL ReadProcessMemory(
  HANDLE hProcess,
  LPCVOID lpBaseAddress,
  LPVOID lpBuffer,
  SIZE_T nSize,
  SIZE_T* lpNumberOfBytesRead
);

Параметры

hProcess

[in] Дескриптор процесса, память которого читается. Дескриптор должен иметь доступ к процессу PROCESS_VM_READ.

lpBaseAddress

[in] Указатель на базовый адрес в заданном процессе из которого делается чтение. Прежде, чем происходит какая-либо передача данных, система проверяет, все ли данные в базовом адресе и памяти в заданном размере доступны для чтения. Если дело обстоит так, функции приступает к работе; в противном случае функция завершается ошибкой.

lpBuffer

[out] Указатель на буфер, который получает содержание из адресного пространства заданного процесса.

nSize

[in] Число байтов, которое читается из заданного процесса.

lpNumberOfBytesRead

[out] Указатель на переменную, которая получает число байтов, переданное в указанный буфер. Если lpNumberOfBytesRead - ПУСТО (NULL), этот параметр игнорируется.

Возвращаемые значения

Если функция завершается успешно, возвращаемое значение не нуль.

Если функция завершается ошибкой, возвращаемое значение равняется нулю. Чтобы получить дополнительную информацию об ошибке, вызовите  GetLastError.

Функция завершается ошибкой, если затребованная операция чтения пересекается с областью процесса, которая является недоступной.

Замечания

Функция ReadProcessMemory копирует данные в заданном адресе, в диапазоне от адресного пространства указанного процесса в заданный определенный буфер текущего процесса. Любой процесс, который имеет дескриптор с доступом PROCESS_VM_READ, может вызвать функцию. Процесс, адресное пространство которого читается - обычно, но не обязательно, отлаживается.

Вся область, которая читается должна быть доступна. Если это не так, функция завершается ошибкой как отмечено выше.

Смотри также

Обзор Основы отладки, Функции, используемые при отладке,   WriteProcessMemory

Размещение и совместимость ReadProcessMemory

К

Windows XP

Да 

л

Windows 2000 Professional

Да

и

Windows NT  Workstation

Да 

е

Windows Me

Да

н

Windows 98

Да

т

Windows 95

Да

 
С

Windows Server 2003

Да

е Windows 2000 Server Да
р Windows NT Server Да 
в    
е    
р    

Используемая библиотека

Kernel32.lib

Используемая DLL kernel32.dll
 Заголовочный файл  

- объявлено в

Winbase.h

 - включено в

Windows.h

 Unicode

Нет

 Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz