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

Process의 메모리 데이터를 읽어오는 함수.


hProcess : 메모리에서 데이터를 읽어 올 프로세스의 핸들. 이 핸들에대한 PROCESS_VM_READ 권한이 있어야 메모리에 액세스 할 수 있다. (디버깅 모드로 접근시 모든 메모리에대해 R/W 권한이 있다.)

lpBaseAddress : 읽어올 데이터가 있는 메모리의 주소. 이 메모리의 주소는 hProcess내의 공간이어야 하며, 시스템은 이 메모리에 접근해 데이터를 전송하기전에 이 메모리를 읽을 권한이 있는지 검사하고 혹 권한이 없다면 함수를 종료한다.

lpBuffer : lpBaseAddress에 있는 데이터를 받기위한 버퍼의 포인터 . 

nSize : 받을 데이터의 크기 


lpNumberOfBytesRead : 받아온 데이터의 크기를 저장할 변수의 포인터. 

(NULL로 지정시 이 파라미터는 무시된다.)


Posted by $Zero
: