Fungsi ReadProcessMemory (memoryapi.h)

Sintaks

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

Parameter

[in] hProcess

Handel ke proses dengan memori yang sedang dibaca. Handel harus memiliki akses PROCESS_VM_READ ke proses.

[in] lpBaseAddress

Penunjuk ke alamat dasar dalam proses yang ditentukan untuk dibaca. Sebelum transfer data terjadi, sistem memverifikasi bahwa semua data dalam alamat dasar dan memori dengan ukuran yang ditentukan dapat diakses untuk akses baca, dan jika tidak dapat diakses, fungsi gagal.

[out] lpBuffer

Penunjuk ke buffer yang menerima konten dari ruang alamat proses yang ditentukan.

[in] nSize

Jumlah byte yang akan dibaca dari proses yang ditentukan.

[out] lpNumberOfBytesRead

Penunjuk ke variabel yang menerima jumlah byte yang ditransfer ke buffer yang ditentukan. Jika lpNumberOfBytesRead adalah NULL, parameter diabaikan.

Menampilkan nilai

Jika fungsi berhasil, nilai yang dikembalikan bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah 0 (nol). Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Fungsi gagal jika operasi baca yang diminta menyeberang ke area proses yang tidak dapat diakses.

Keterangan

ReadProcessMemory menyalin data dalam rentang alamat yang ditentukan dari ruang alamat proses yang ditentukan ke dalam buffer yang ditentukan dari proses saat ini. Setiap proses yang memiliki handel dengan akses PROCESS_VM_READ dapat memanggil fungsi .

Seluruh area yang akan dibaca harus dapat diakses, dan jika tidak dapat diakses, fungsi gagal.

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header memoryapi.h (termasuk Windows.h)
Pustaka onecore.lib
DLL Kernel32.dll

Lihat juga

Fungsi Debugging, OpenProcess, Fungsi Proses untuk Debugging, VirtualAllocEx, WriteProcessMemory