Condividi tramite


Funzione ReadProcessMemory (memoryapi.h)

Sintassi

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

Parametri

[in] hProcess

Handle per il processo con memoria in fase di lettura. L'handle deve avere PROCESS_VM_READ l'accesso al processo.

[in] lpBaseAddress

Puntatore all'indirizzo di base nel processo specificato da cui leggere. Prima che si verifichi un trasferimento dei dati, il sistema verifica che tutti i dati nell'indirizzo di base e nella memoria delle dimensioni specificate siano accessibili per l'accesso in lettura e, se non è accessibile, la funzione ha esito negativo.

[out] lpBuffer

Puntatore a un buffer che riceve il contenuto dallo spazio indirizzi del processo specificato.

[in] nSize

Numero di byte da leggere dal processo specificato.

[out] lpNumberOfBytesRead

Puntatore a una variabile che riceve il numero di byte trasferiti nel buffer specificato. Se lpNumberOfBytesRead è NULL, il parametro viene ignorato.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è 0 (zero). Per informazioni dettagliate sull'errore, chiamare GetLastError.

La funzione ha esito negativo se l'operazione di lettura richiesta si interseca in un'area del processo inaccessibile.

Commenti

ReadProcessMemory copia i dati nell'intervallo di indirizzi specificato dallo spazio indirizzi del processo specificato nel buffer specificato del processo corrente. Qualsiasi processo con handle con PROCESS_VM_READ accesso può chiamare la funzione.

L'intera area da leggere deve essere accessibile e, se non è accessibile, la funzione ha esito negativo.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione memoryapi.h (include Windows.h)
Libreria onecore.lib
DLL Kernel32.dll

Vedere anche

Funzioni di debug, OpenProcess, Funzioni di processo per il debug, VirtualAllocEx, WriteProcessMemory