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。

注解

仅当启用了内核跟踪提供程序或 UMDF 驱动程序在收到请求后名为 IWDFIoRequest3::SetActivityId 的 UMDF 驱动程序时,从内核模式反映的请求才具有可用的活动标识符。 有关 Windows (ETW) 的事件跟踪的详细信息,请参阅 事件跟踪

仅当 UMDF 驱动程序以前调用 了 IWDFIoRequest3::SetActivityId 时,UMDF 驱动程序启动的请求才具有可用的活动标识符。

当驱动程序调用 IWdfIoRequest2::Reuse 时,框架不会清除请求的活动标识符。

有关活动标识符的详细信息,请参阅 使用活动标识符

此方法的 UMDF 2 等效项是 WdfRequestRetrieveActivityId

示例

下面的代码示例演示驱动程序可以从一个请求中检索活动标识符,然后使用它为另一个请求设置活动标识符。

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
标头 wudfddi.h (包括 Wudfddi.h)
DLL WUDFx.dll

另请参阅

IWDFIoRequest3

IWDFIoRequest3::SetActivityId