Compartir a través de


Consulta del registro de eventos del sistema para eventos de error de hardware

El nombre del proveedor que registra los eventos de error de hardware es Microsoft-Windows-WHEA-Logger.

Este proveedor está diseñado para los usuarios en escenarios de escritorio. Proporciona un mensaje legible con los detalles principales del evento para que un usuario pueda obtener una idea básica de lo que ocurrió.

En el ejemplo de código siguiente se muestra cómo consultar el registro de eventos del sistema para recuperar los eventos de error de hardware registrados previamente por la arquitectura de errores de hardware de Windows (WHEA).

// Function to query the event log for hardware error events
VOID QueryHwErrorEvents(VOID) {

  EVT_HANDLE QueryHandle;
  EVT_HANDLE EventHandle;
  ULONG Returned;

  // Obtain a query handle to the system event log
  QueryHandle =
    EvtQuery(
      NULL, 
      L"System", 
      L"*[System/Provider[@Name=\"Microsoft-Windows-WHEA-Logger\"]]",
      EvtQueryChannelPath | EvtQueryForwardDirection
      );

  // Check result
  if (QueryHandle != NULL) {

    // Get the next hardware error event
    while (EvtNext(
             QueryHandle,
             1,
             &EventHandle,
             -1,
             0,
             &Returned
             )) {

      // Process the hardware error event
      ProcessHwErrorEvent(EventHandle);

      // Close the event handle
      EvtClose(EventHandle);
    }

    // Close the query handle
    EvtClose(QueryHandle);
  }
}

Nota

Todas las funciones de Evt_Xxx_ y los tipos de datos EVT_XXX que se usaron en los ejemplos anteriores están documentadas en la sección Registro de eventos de Windows en la documentación de Microsoft Windows SDK.