次の方法で共有


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 の呼び出し元は、ControlCode がEVENT_ACTIVITY_CTRL_CREATE_IDされていない限り、IRQL <DISPATCH_LEVELで実行されている必要があります。この場合、関数は任意の IRQL で呼び出すことができます。

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

要件

要件
対象プラットフォーム ユニバーサル
Header wdm.h (Wdm.h、Ntddk.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe;Ntdll.dll
IRQL 「コメント」セクションを参照してください

こちらもご覧ください

EtwActivityIdControlKernel