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 |
関連項目
EnableTrace の
EnableTraceEx の
EtwEventEnabled の
EtwProviderEnabled の