IWDFIoRequest3::RetrieveActivityId メソッド (wudfddi.h)

[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、新しいバージョンのWindows 10では UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは UMDF 2 を使用する必要があります。 詳細については、「UMDF を使用したはじめに」を参照してください。

RetrieveActivityId メソッドは、I/O 要求に関連付けられている現在のアクティビティ識別子を取得します。

構文

HRESULT RetrieveActivityId(
  [out] LPGUID ActivityId
);

パラメーター

[out] ActivityId

取得した GUID を格納する場所へのポインター。

戻り値

呼び出しが成功した場合、RetrieveActivityId はS_OKを返します。 それ以外の場合、このメソッドは次のいずれかの値を返す可能性があります。

リターン コード 説明
HRESULT_FROM_WIN32 (ERROR_NOT_FOUND)
要求に関連付けられているアクティビティ ID はありません。

注釈

カーネル モードから反映される要求には、カーネル トレース プロバイダーが有効になっている場合、または要求を受信した後に IWDFIoRequest3::SetActivityId という UMDF ドライバーが呼び出された場合にのみ、アクティビティ識別子を使用できます。 Windows イベント トレース (ETW) の詳細については、「 イベント トレース」を参照してください。

UMDF ドライバーによって開始された要求には、以前 に IWDFIoRequest3::SetActivityId と呼ばれた UMDF ドライバーの場合にのみ使用できるアクティビティ識別子があります。

フレームワークは、ドライバーが IWdfIoRequest2::Reuse を呼び出すときに、要求のアクティビティ識別子をクリアしません。

アクティビティ識別子の詳細については、「アクティビティ識別子の 使用」を参照してください。

このメソッドに相当する UMDF 2 は WdfRequestRetrieveActivityId です

次のコード例は、ドライバーが 1 つの要求からアクティビティ識別子を取得し、それを使用して別の要求のアクティビティ識別子を設定できることを示しています。

hrQI = pWdfRequest->QueryInterface(IID_PPV_ARGS(&pOriginalRequest3));
ASSERT(SUCCEEDED(hrQI));

hrQI = pNewRequest->QueryInterface(IID_PPV_ARGS(&pNewRequest3));
ASSERT(SUCCEEDED(hrQI));

//
// Obtain activity id from original request and set in the new one
//

pOriginalRequest3->RetrieveActivityId(&activityId);
pNewRequest3->SetActivityId(&activityId);

pOriginalRequest3->Release();
pNewRequest3->Release();


要件

要件
サポートされている最小のクライアント Windows 8
サポート終了 UMDF 2.0 以降では使用できません。
対象プラットフォーム デスクトップ
最小 UMDF バージョン 1.11
Header wudfddi.h (Wudfddi.h を含む)
[DLL] WUDFx.dll

こちらもご覧ください

IWDFIoRequest3

IWDFIoRequest3::SetActivityId