Метод IWDFIoRequest3::RetrieveActivityId (wudfddi.h)
[Предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе начало работы с помощью UMDF.]
Метод RetrieveActivityId извлекает идентификатор текущего действия, связанный с запросом ввода-вывода.
Синтаксис
HRESULT RetrieveActivityId(
[out] LPGUID ActivityId
);
Параметры
[out] ActivityId
Указатель на расположение для хранения полученного GUID.
Возвращаемое значение
RetrieveActivityId возвращает S_OK, если вызов выполнен успешно. В противном случае этот метод может вернуть одно из следующих значений.
Код возврата | Описание |
---|---|
|
Идентификатор действия не связан с запросом. |
Комментарии
Запросы, отраженные в режиме ядра, имеют идентификатор действия, доступный только в том случае, если включен поставщик трассировки ядра или если драйвер 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 (включая Wudfddi.h) |
DLL | WUDFx.dll |