Compartir a través de


PSHED_PI_FINALIZE_ERROR_RECORD función de devolución de llamada (ntddk.h)

Un complemento PSHED FinalizeErrorRecord función de devolución de llamada agrega secciones de registro de error adicionales a un registro de error que describe más completamente la condición de error.

Sintaxis

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
)
{...}

Parámetros

[in, out, optional] PluginContext

Puntero al área de contexto que se especificó en el miembro Context de la estructura WHEA_PSHED_PLUGIN_REGISTRATION_PACKET cuando el complemento PSHED llamó a la función pshedRegisterPlugin para registrarse en el PSHED.

[in] ErrorSource

Puntero a una estructura de WHEA_ERROR_SOURCE_DESCRIPTOR que describe el origen del error que informó del error de hardware.

[in] BufferLength

Tamaño, en bytes, del búfer al que apunta el parámetro ErrorRecord.

[in, out] ErrorRecord

Puntero a una estructura de WHEA_ERROR_RECORD que describe el registro de error que se está actualizando con secciones de registros de error adicionales.

Valor devuelto

Un complemento PSHED FinalizeErrorRecord función de devolución de llamada devuelve uno de los siguientes códigos NTSTATUS:

Código devuelto Descripción
STATUS_SUCCESS El registro de error se actualizó correctamente con las secciones de registros de errores adicionales.
STATUS_BUFFER_TOO_SMALL El tamaño del búfer al que apunta el parámetro ErrorRecord especificado por el parámetro BufferLength es demasiado pequeño para contener el registro de errores si se actualiza con las secciones de registro de errores adicionales.
STATUS_NOT_SUPPORTED El complemento PSHED no admite el origen de error especificado.
STATUS_UNSUCCESSFUL Error.

Observaciones

Un complemento PSHED que participa en la recuperación de información de error establece el Callbacks.RetrieveErrorInfo, Callbacks.FinalizeErrorRecordy Callbacks.ClearErrorStatus miembros de la estructura de WHEA_PSHED_PLUGIN_REGISTRATION_PACKET que apuntar a su RetrieveErrorInfo, FinalizeErrorRecordy ClearErrorStatus funciones de devolución de llamada cuando el complemento llama a la función PshedRegisterPlugin para registrarse en el PSHED. El complemento PSHED también debe establecer la marca de pshedFAErrorInfoRetrieval en el miembro FunctionalAreaMask de la estructura de WHEA_PSHED_PLUGIN_REGISTRATION_PACKET.

El kernel de Windows llama a PSHED para que pueda agregar secciones de registro de errores adicionales a un registro de error. Si se registra un complemento PSHED para participar en la recuperación de información de error, PSHED llama al complemento PSHED FinalizeErrorRecord función de devolución de llamada para que el complemento PSHED pueda agregar cualquier sección de registro de errores adicional al registro de error que describa completamente la condición de error.

Un complemento PSHED debe asegurarse de que no agrega secciones de registro de errores adicionales más allá del final del registro de error. La cantidad de memoria que el kernel de Windows asigna para un búfer para que contenga un registro de error determinado se calcula a partir de la MaxRawDataLength y miembros de MaxSectionsPerRecord de la estructura de WHEA_ERROR_SOURCE_DESCRIPTOR que describe el origen de error que informó del error de hardware. Si un complemento PSHED requiere espacio adicional en el búfer para contener las secciones de registro de errores adicionales que agrega al registro de error, debe participar en la detección del origen de errores y aumentar el valor en el MaxSectionsPerRecord miembro de la estructura de WHEA_ERROR_SOURCE_DESCRIPTOR para cada origen de error según corresponda para tener en cuenta las secciones de registro de errores adicionales.

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de ntddk.h (incluya Ntddk.h)
irQL IRQL >= DISPATCH_LEVEL

Consulte también

ClearErrorStatus

pshedRegisterPlugin

RetrieveErrorInfo

WHEA_ERROR_RECORD

WHEA_ERROR_SOURCE_DESCRIPTOR

WHEA_PSHED_PLUGIN_REGISTRATION_PACKET