PREAD_PROCESS_MEMORY_ROUTINE funzione di callback (dbghelp.h)

Funzione di callback definita dall'applicazione usata con la funzione StackWalk64 . Viene chiamato quando StackWalk64 deve leggere la memoria dallo spazio indirizzi del processo.

Il tipo PREAD_PROCESS_MEMORY_ROUTINE64 definisce un puntatore a questa funzione di callback. ReadProcessMemoryProc64 è un segnaposto per il nome della funzione definita dall'applicazione.

Sintassi

PREAD_PROCESS_MEMORY_ROUTINE PreadProcessMemoryRoutine;

BOOL PreadProcessMemoryRoutine(
  [in]  HANDLE hProcess,
  [in]  DWORD lpBaseAddress,
  [out] PVOID lpBuffer,
  [in]  DWORD nSize,
  [out] PDWORD lpNumberOfBytesRead
)
{...}

Parametri

[in] hProcess

Handle per il processo per il quale viene generata la traccia dello stack.

[in] lpBaseAddress

Indirizzo di base della memoria da leggere.

[out] lpBuffer

Puntatore a un buffer che riceve la memoria da leggere.

[in] nSize

Dimensioni della memoria da leggere, in byte.

[out] lpNumberOfBytesRead

Puntatore a una variabile che riceve il numero di byte effettivamente letti.

Valore restituito

Se la funzione ha esito positivo, il valore restituito deve essere TRUE. Se la funzione ha esito negativo, il valore restituito deve essere FALSE.

Commenti

In molti casi, questa funzione può gestire al meglio il callback con una chiamata corrispondente a ReadProcessMemory.

Questa funzione deve leggere la quantità massima possibile di memoria richiesta. La funzione StackWalk64 gestisce il caso in cui viene letto solo parte della memoria richiesta.

Questa funzione di callback sostituisce la funzione di callback PREAD_PROCESS_MEMORY_ROUTINE . PREAD_PROCESS_MEMORY_ROUTINE è definito come indicato di seguito in Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define PREAD_PROCESS_MEMORY_ROUTINE PREAD_PROCESS_MEMORY_ROUTINE64
#else
typedef
BOOL
(__stdcall *PREAD_PROCESS_MEMORY_ROUTINE)(
    __in HANDLE hProcess,
    __in DWORD lpBaseAddress,
    __out_bcount(nSize) PVOID lpBuffer,
    __in DWORD nSize,
    __out PDWORD lpNumberOfBytesRead
    );
#endif

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione dbghelp.h
Componente ridistribuibile DbgHelp.dll 5.1 o versioni successive

Vedi anche

Funzioni DbgHelp

ReadProcessMemory

StackWalk64