ETWENABLECALLBACK 回呼函式 (wdm.h)
EtwEnableCallback 函式是選擇性驅動程式提供的回呼函式,可用來接收啟用或停用通知。
語法
ETWENABLECALLBACK Etwenablecallback;
void Etwenablecallback(
[in] LPCGUID SourceId,
ULONG ControlCode,
[in] UCHAR Level,
[in] ULONGLONG MatchAnyKeyword,
[in] ULONGLONG MatchAllKeyword,
[in, optional] PEVENT_FILTER_DESCRIPTOR FilterData,
[in, out, optional] PVOID CallbackContext
)
{...}
參數
[in] SourceId
識別啟用提供者之會話的 GUID。
ControlCode
[in] Level
啟用事件的層級。 此參數是提供者定義的值,指定提供者寫入之事件的詳細資訊。 如果這個值小於或等於事件所定義的層級值,提供者必須寫入事件。
此值會在 EnableTraceEx 函式的 Level 參數或 EnableTrace 函式的 EnableLevel 參數中傳遞。
[in] MatchAnyKeyword
提供者用來判斷其寫入之事件的類別目錄的關鍵詞位掩碼。
此值會傳入 EnableTraceEx 函式的 MatchAnyKeyword 參數或 EnableTrace 函式的 EnableFlag 參數。 MatchAnyKeyword 是 64 位值,基本上是 32 位 EnableFlag 的擴充版本。
[in] MatchAllKeyword
此位掩碼會額外限制提供者寫入的事件類別。
此值會在 EnableTraceEx 函式的 MatchAllKeywords 參數中傳遞。
[in, optional] FilterData
提供者定義的數據。 這是選擇性參數。 提供者會決定數據及其用途的配置。 例如,提供者可以使用此數據來額外篩選寫入的事件,或使用它來執行一些計算,再寫入事件。 如需詳細資訊,請參閱 事件篩選描述元。
[in, out, optional] CallbackContext
呼叫 EtwRegister 的提供者註冊本身時所定義的回呼函式內容。 這是選擇性參數。
傳回值
無
備註
使用 EtwRegister 函式來指定 EtwEnableCallback 函式的指標。
使用回呼函式的 FilterData 參數,提供具有複雜篩選功能的提供者。 EtwEnableCallback 函式不會取代 enable-status 函式呼叫 (EtwEventEnabled 和 EtwProviderEnabled) 。 不過,其可作為補充專案。 不過,除非您的層級和關鍵詞目前已啟用,否則不論回呼函式提供的 FilterData 為何,都不會寫入事件。
EtwEnableCallback 的呼叫端必須在 IRQL = PASSIVE_LEVEL系統線程的內容中執行。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 可在 Windows Vista 和更新版本的 Windows 中使用。 |
目標平台 | 桌面 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h) |
IRQL | PASSIVE_LEVEL |