Share via


Funzione WerRegisterMemoryBlock (werapi.h)

Registra un blocco di memoria da raccogliere quando Segnalazione errori Windows (WER) crea una segnalazione errori.

Sintassi

HRESULT WerRegisterMemoryBlock(
  [in] PVOID pvAddress,
  [in] DWORD dwSize
);

Parametri

[in] pvAddress

Indirizzo iniziale del blocco di memoria.

[in] dwSize

Dimensioni del blocco di memoria, in byte. Il valore massimo per questo parametro è WER_MAX_MEM_BLOCK_SIZE byte.

Valore restituito

Questa funzione restituisce S_OK in caso di esito positivo o un codice di errore in caso di errore, inclusi i codici di errore seguenti.

Codice restituito Descrizione
WER_E_INVALID_STATE Lo stato del processo non è valido. Ad esempio, il processo è in modalità di ripristino dell'applicazione.
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) Il numero di blocchi e file di memoria registrati supera il limite.

Commenti

La memoria registrata con questa funzione viene aggiunta solo ai file di dump heap o di dimensioni maggiori. Questa memoria non viene mai aggiunta ai mini dump o ai file di dump più piccoli.

Per gli arresti anomali e nessuna risposta, il sistema operativo fornisce automaticamente la segnalazione errori (non è necessario fornire codice di segnalazione errori nell'applicazione). Se si usa questa funzione per registrare un blocco di memoria, il sistema operativo aggiungerà le informazioni sul blocco di memoria al file di dump al momento dell'arresto anomalo o della mancata risposta. Il blocco di memoria viene aggiunto al file di dump per il report solo quando vengono richiesti dati aggiuntivi dal server.

Per la creazione di report di eventi generici, l'applicazione deve chiamare direttamente le funzioni di segnalazione degli eventi generici WER. Per aggiungere il blocco di memoria a un report generico, chiamare la funzione WerReportAddDump e quindi chiamare la funzione WerReportSubmit e specificare il flag WER_SUBMIT_ADD_REGISTERED_DATA.

Per rimuovere il blocco da questo elenco, chiamare la funzione WerUnregisterMemoryBlock .

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione werapi.h
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

WerUnregisterMemoryBlock, Segnalazione errori Windows