Функция WdfRequestGetCompletionParams (wdfrequest.h)
[Относится к KMDF и UMDF]
Метод WdfRequestGetCompletionParams извлекает параметры завершения ввода-вывода, связанные с указанным объектом запроса платформы.
Синтаксис
void WdfRequestGetCompletionParams(
[in] WDFREQUEST Request,
[in, out] PWDF_REQUEST_COMPLETION_PARAMS Params
);
Параметры
[in] Request
Дескриптор объекта запроса платформы.
[in, out] Params
Указатель на структуру WDF_REQUEST_COMPLETION_PARAMS , предоставляемую вызывающим.
Возвращаемое значение
None
Remarks
Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
После того как драйвер вызвал WdfRequestSend для синхронной или асинхронной отправки запроса ввода-вывода целевому объекту ввода-вывода, а затем после завершения запроса ввода-вывода целевой объект ввода-вывода может вызвать WdfRequestGetCompletionParams , чтобы получить параметры завершения запроса ввода-вывода.
Структура параметров завершения содержит допустимые сведения, только если драйвер отформатировал запрос путем вызова одного из методов WdfIoTargetFormatXxx . Например, см . WdfIoTargetFormatRequestForRead.
Обратите внимание, что если драйвер вызывает один из методов, который отправляет запросы ввода-вывода целевым объектам ввода-вывода только синхронно (например , WdfIoTargetSendReadSynchronously), драйвер не должен вызывать WdfRequestGetCompletionParams.
Метод WdfRequestGetCompletionParams копирует параметры завершения запроса ввода-вывода в указанную структуру WDF_REQUEST_COMPLETION_PARAMS .
Если драйвер отправляет запрос ввода-вывода асинхронно, он обычно вызывает этот метод из функции обратного вызова CompletionRoutine .
Дополнительные сведения о WdfRequestGetCompletionParams см. в разделе Завершение запросов ввода-вывода.
Примеры
В следующем примере кода инициализируется структура WDF_REQUEST_COMPLETION_PARAMS , а затем вызывается WdfRequestGetCompletionParams.
WDF_REQUEST_COMPLETION_PARAMS completionParams;
WDF_REQUEST_COMPLETION_PARAMS_INIT(&completionParams);
WdfRequestGetCompletionParams(
request,
&completionParams
);
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,0 |
Минимальная версия UMDF | 2,0 |
Верхняя часть | wdfrequest.h (включая Wdf.h) |
Библиотека | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
Правила соответствия DDI | DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |