共用方式為


查詢硬體錯誤事件的系統事件記錄檔

記錄硬體錯誤事件的提供者名稱 Microsoft-Windows-WHEA-Logger

此提供者是針對桌面案例中的用戶所設計。 它提供人類可讀取的訊息,其中包含事件的主要詳細數據,讓使用者可以取得所發生狀況的基本概念。

下列程式代碼範例示範如何查詢系統事件記錄檔,以擷取先前由 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);
  }
}

注意

上述範例中使用的所有 Evt_Xxx_ 函式和EVT_XXX 資料類型記載於 Microsoft Windows SDK 檔中的 Windows 事件記錄檔 一節。