EVENT_FILTER_HEADER 構造体 (evntprov.h)
インストルメンテーション マニフェストで定義されているフィルター データの前に必要なヘッダー データを定義します。
構文
typedef struct _EVENT_FILTER_HEADER {
USHORT Id;
UCHAR Version;
UCHAR Reserved[5];
ULONGLONG InstanceId;
ULONG Size;
ULONG NextOffset;
} EVENT_FILTER_HEADER, *PEVENT_FILTER_HEADER;
メンバー
Id
スキーマ化されたフィルターのマニフェスト内のフィルターを識別する識別子。 filter 要素の value 属性には、識別子が含まれています。
Version
スキーマ化されたフィルターのフィルターのバージョン番号。 filter 要素の version 属性には、バージョン番号が含まれています。
Reserved[5]
予約済み
InstanceId
フィルターを渡したセッションを識別する識別子。 ETW は、この値を設定します。セッションでは、このメンバーを 0 に設定する必要があります。
イベント データがフィルター条件と一致しない場合にイベントがセッションに書き込まれないように、プロバイダーはこの値を使用して EventWriteEx の Filter パラメーターを設定します (プロバイダーは、イベントがセッションに書き込まれるかどうかを判断する際にフィルター データがどのように使用されるかのセマンティクスを決定します)。
Size
このヘッダーのサイズ (バイト単位) と、このヘッダーの末尾に追加されるフィルター データ。
NextOffset
このフィルター オブジェクトの先頭から次のフィルター オブジェクトまでのオフセット。 これ以上フィルター ブロックがない場合、値は 0 です。 ETW は、この値を設定します。セッションでは、このメンバーを 0 に設定する必要があります。
注釈
プロバイダーに渡すフィルター データには、ヘッダーも含まれます。 次に、3 つの整数を含むフィルターを定義する方法の例を示します。
struct _MY_FILTER {
EVENT_FILTER_HEADER FilterHeader;
ULONG Int1;
ULONG Int2;
ULONG Int3;
} MY_FILTER, *MY_FILTER;
MY_FILTER FilterData;
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
Header | evntprov.h |