IWDFIoRequest3::RetrieveActivityId method (wudfddi.h)
[Warning: UMDF 2 is the latest version of UMDF and supersedes UMDF 1. All new UMDF drivers should be written using UMDF 2. No new features are being added to UMDF 1 and there is limited support for UMDF 1 on newer versions of Windows 10. Universal Windows drivers must use UMDF 2. For more info, see Getting Started with UMDF.]
The RetrieveActivityId method retrieves the current activity identifier associated with an I/O request.
Syntax
HRESULT RetrieveActivityId(
[out] LPGUID ActivityId
);
Parameters
[out] ActivityId
A pointer to a location to store the retrieved GUID.
Return value
RetrieveActivityId returns S_OK if the call is successful. Otherwise, this method might return one of the following values.
Return code | Description |
---|---|
|
No activity ID is associated with the request. |
Remarks
Requests reflected from kernel mode have an activity identifier available only if the Kernel Trace provider is enabled or if the UMDF driver called IWDFIoRequest3::SetActivityId after receiving the request. For more information about Event Tracing for Windows (ETW), see Event Tracing.
Requests initiated by the UMDF driver have an activity identifier available only if the UMDF driver previously called IWDFIoRequest3::SetActivityId.
The framework does not clear a request's activity identifier when the driver calls IWdfIoRequest2::Reuse.
For more information about activity identifiers, see Using Activity Identifiers.
The UMDF 2 equivalent of this method is WdfRequestRetrieveActivityId.
Examples
The following code example shows a driver can retrieve an activity identifier from one request and then use it to set the activity identifier for another request.
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();
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 8 |
End of support | Unavailable in UMDF 2.0 and later. |
Target Platform | Desktop |
Minimum UMDF version | 1.11 |
Header | wudfddi.h (include Wudfddi.h) |
DLL | WUDFx.dll |