共用方式為


evtQuery 函式 (winevt.h)

執行查詢,以從符合指定查詢準則的通道或記錄檔擷取事件。

語法

EVT_HANDLE EvtQuery(
  [in] EVT_HANDLE Session,
  [in] LPCWSTR    Path,
  [in] LPCWSTR    Query,
  [in] DWORD      Flags
);

參數

[in] Session

EvtOpenSession 函式傳回的遠端會話句柄。 設定為 NULL 以查詢本機電腦上的事件。

[in] Path

包含您要查詢之事件的記錄檔之通道名稱或完整路徑。 您可以指定 .evt、.evtx 或.etl 記錄檔。 如果 Query 參數包含 XPath 查詢,則需要路徑;如果 Query 參數包含結構化 XML 查詢,且查詢指定路徑,則會忽略路徑。

[in] Query

查詢,指定您想要擷取的事件類型。 您可以指定 XPath 1.0 查詢或結構化 XML 查詢。 如果您的 XPath 包含超過 20 個表示式,請使用結構化 XML 查詢。 若要接收所有事件,請將此參數設定為 NULL 或 “*”。

[in] Flags

一或多個旗標,指定您想要接收事件的順序,以及您是否要查詢通道或記錄檔。 如需可能的值,請參閱 EVT_QUERY_FLAGS 列舉。

傳回值

如果成功,則為查詢結果的句柄;否則為 NULL。 如果函式傳回 NULL,請呼叫 GetLastError 函 式以取得錯誤碼。

備註

若要從查詢結果取得事件,請呼叫 EvtNext 函式。 若要從結果中的特定事件開始擷取事件,請呼叫 EvtSeek 函 式。

完成時,您必須使用查詢結果句柄呼叫 EvtClose 函式。

您只能使用這個函式在建立句柄的相同線程上傳回的查詢句柄。

範例

如需示範如何使用此函式的範例,請參閱 查詢事件

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 winevt.h
程式庫 Wevtapi.lib
Dll Wevtapi.dll

另請參閱

EvtNext

EvtSeek

EvtSubscribe