次の方法で共有


EtwActivityIdControl 関数 (wdm.h)

EtwActivityIdControl 関数は、現在のアクティビティ識別子を作成、クエリ、および設定します。

構文

NTSTATUS EtwActivityIdControl(
  [in]      ULONG  ControlCode,
  [in, out] LPGUID ActivityId
);

パラメーター

[in] ControlCode

ControlCode パラメーターには、次のいずれかの定義値を指定できます。

価値 意味
EVENT_ACTIVITY_CTRL_GET_ID ActivityId パラメーター内の現在のスレッドのアクティビティ識別子を返します。
EVENT_ACTIVITY_CTRL_SET_ID 現在のスレッドのアクティビティ識別子を、ActivityId で指定値に設定します。 この関数に渡 ActivityId は、必ずしも EVENT_ACTIVITY_CTRL_CREATE_ID または EVENT_ACTIVITY_CTRL_CREATE_SET_ID コントロール コードによって作成される必要はありません。 GUID 内に収まる任意の値を使用できます。これには、何らかの種類のアクティビティ識別子のニーズに対応する使用可能なローカル値も含まれます。
EVENT_ACTIVITY_CTRL_CREATE_ID 新しい識別子を作成し、ActivityId パラメーターを新しい識別子の値に設定します。
EVENT_ACTIVITY_CTRL_GET_SET_ID 現在のスレッドのアクティビティ識別子を ActivityIdで指定された値に設定し、関数呼び出しの前にスレッドのアクティビティ識別子の値 ActivityId を返します。
EVENT_ACTIVITY_CTRL_CREATE_SET_ID 現在のスレッドのアクティビティ識別子をコピーします。 新しい識別子を作成し、現在のスレッドのアクティビティ識別子を新しい値に設定します。 関数呼び出し 前のスレッドのアクティビティ識別子の値を持つ ActivityId を返します。

[in, out] ActivityId

イベントに関連付けられているアクティビティを示す識別子。 ActivityId パラメーターは、関連するイベントをグループ化する方法を提供し、エンドツーエンドのトレースで使用されます。

戻り値

EtwActivityIdControl は、STATUS_SUCCESSまたは適切な NTSTATUS 値を返します。

備考

アクティビティ識別子は、計算の共通スレッドで個別のイベントをリンクするメソッドを提供します。 アクティビティ は、アプリケーションまたはドライバーによって実行される作業項目です。 アクティビティの概念は、エンドツーエンドのトレースの中核となるコンポーネントです。

EtwActivityIdControl の呼び出し元は、ControlCodeEVENT_ACTIVITY_CTRL_CREATE_IDされていない限り、IRQL < DISPATCH_LEVEL で実行する必要があります。この場合、関数は任意の IRQL で呼び出すことができます。

EtwActivityIdControlKernel 関数を使用して、アクティビティ識別子のカーネル スレッドを照会または設定します。

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー wdm.h (Wdm.h、Ntddk.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe;Ntdll.dll
IRQL [コメント] セクションを参照してください

関連項目

EtwActivityIdControlKernel