Метод IWDFIoRequest3::RetrieveActivityId (wudfddi.h)

[ предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе Начало работы с UMDF.]

Метод GetActivityId извлекает текущий идентификатор действия, связанный с запросом ввода-вывода.

Синтаксис

HRESULT RetrieveActivityId(
  [out] LPGUID ActivityId
);

Параметры

[out] ActivityId

Указатель на расположение для хранения полученного GUID.

Возвращаемое значение

RetrieveActivityId возвращает S_OK, если вызов выполнен успешно. В противном случае этот метод может вернуть одно из следующих значений.

Возвращаемый код Описание
HRESULT_FROM_WIN32 (ERROR_NOT_FOUND)
Идентификатор действия не связан с запросом.

Замечания

Запросы, отражаемые в режиме ядра, имеют идентификатор действия, доступный только в том случае, если поставщик трассировки ядра включен или если драйвер UMDF, называемый IWDFIoRequest3::SetActivityId после получения запроса. Дополнительные сведения о трассировке событий для Windows (ETW) см. в трассировки событий.

Запросы, инициированные драйвером UMDF, имеют идентификатор действия, доступный только в том случае, если драйвер UMDF, ранее называемый IWDFIoRequest3::SetActivityId.

Платформа не очищает идентификатор действия запроса, когда драйвер вызывает 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 (include Wudfddi.h)
DLL WUDFx.dll

См. также

IWDFIoRequest3

IWDFIoRequest3::SetActivityId