Condividi tramite


PSHED_PI_FINALIZE_ERROR_RECORD funzione di callback (ntddk.h)

Una funzione di callback FinalizeErrorRecord di un plug-in PSHED aggiunge sezioni di record di errore supplementari a un record di errore che descrive più completamente la condizione di errore.

Sintassi

PSHED_PI_FINALIZE_ERROR_RECORD PshedPiFinalizeErrorRecord;

NTSTATUS PshedPiFinalizeErrorRecord(
  [in, out, optional] PVOID PluginContext,
  [in]                PWHEA_ERROR_SOURCE_DESCRIPTOR ErrorSource,
  [in]                ULONG BufferLength,
  [in, out]           PWHEA_ERROR_RECORD ErrorRecord
)
{...}

Parametri

[in, out, optional] PluginContext

Puntatore all'area di contesto specificata nel membro Context della struttura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET quando il plug-in PSHED ha chiamato la funzione PshedRegisterPlugin per registrarsi con PSHED.

[in] ErrorSource

Puntatore a una struttura di WHEA_ERROR_SOURCE_DESCRIPTOR che descrive l'origine dell'errore che ha segnalato l'errore hardware.

[in] BufferLength

Dimensione, in byte, del buffer a cui punta il parametro ErrorRecord .

[in, out] ErrorRecord

Puntatore a una struttura WHEA_ERROR_RECORD che descrive il record di errore che viene aggiornato con sezioni supplementari del record di errore.

Valore restituito

Una funzione di callback FinalizeErrorRecord di un plug-in PSHED restituisce uno dei codici NTSTATUS seguenti:

Codice restituito Descrizione
STATUS_SUCCESS Il record di errore è stato aggiornato correttamente con eventuali sezioni di record di errore supplementari.
STATUS_BUFFER_TOO_SMALL Le dimensioni del buffer a cui punta il parametro ErrorRecord come specificato dal parametro BufferLength sono troppo piccole per contenere il record di errore se viene aggiornato con le sezioni supplementari del record di errore.
STATUS_NOT_SUPPORTED Il plug-in PSHED non supporta l'origine errore specificata.
STATUS_UNSUCCESSFUL Si è verificato un errore.

Commenti

Un plug-in PSHED che partecipa al recupero delle informazioni sugli errori imposta i membri Callbacks.RetrieveErrorInfo, Callbacks.FinalizeErrorRecord e Callbacks.ClearErrorStatus della struttura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET in modo che puntino ai relativi callback RetrieveErrorInfo, FinalizeErrorRecord e ClearErrorStatus quando il plug-in chiama la funzione PshedRegisterPlugin per registrarsi con PSHED. Il plug-in PSHED deve anche impostare il flag PshedFAErrorInfoRetrieval nel membro FunctionalAreaMask della struttura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET .

Il kernel di Windows chiama il PSHED in modo che possa aggiungere sezioni di record di errore supplementari a un record di errore. Se un plug-in PSHED viene registrato per partecipare al recupero delle informazioni sugli errori, PSHED chiama la funzione di callback FinalizeErrorRecord del plug-in PSHED in modo che il plug-in PSHED possa aggiungere eventuali sezioni aggiuntive del record di errore al record di errore che descrive in modo più completo la condizione di errore.

Un plug-in PSHED deve garantire che non vengano aggiunte sezioni di record di errore supplementari oltre la fine del record di errore. La quantità di memoria allocata dal kernel di Windows per un buffer in modo che contenga un determinato record di errore viene calcolata dai membri MaxRawDataLength e MaxSectionsPerRecord della struttura WHEA_ERROR_SOURCE_DESCRIPTOR che descrive l'origine dell'errore che ha segnalato l'errore hardware. Se un plug-in PSHED richiede spazio del buffer aggiuntivo per contenere le sezioni supplementari del record di errore aggiunte al record di errore, deve partecipare all'individuazione dell'origine degli errori e aumentare il valore nel membro MaxSectionsPerRecord della struttura di WHEA_ERROR_SOURCE_DESCRIPTOR per ogni origine degli errori in base alle esigenze per tenere conto di eventuali sezioni supplementari del record di errore.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione ntddk.h (include Ntddk.h)
IRQL IRQL >= DISPATCH_LEVEL

Vedi anche

ClearErrorStatus

PshedRegisterPlugin

RetrieveErrorInfo

WHEA_ERROR_RECORD

WHEA_ERROR_SOURCE_DESCRIPTOR

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET