Функция WmiCompleteRequest (wmilib.h)
Подпрограмма WmiCompleteRequest указывает, что драйвер завершил обработку запроса WMI в подпрограмме DpWmiXxx .
Синтаксис
NTSTATUS WmiCompleteRequest(
[in] PDEVICE_OBJECT DeviceObject,
[in, out] PIRP Irp,
[in] NTSTATUS Status,
[in] ULONG BufferUsed,
[in] CCHAR PriorityBoost
);
Параметры
[in] DeviceObject
Указатель на DEVICE_OBJECT драйвера.
[in, out] Irp
Указатель на IRP.
[in] Status
Указывает состояние, возвращаемого для IRP.
[in] BufferUsed
Указывает количество байтов, необходимое в буфере, переданном в подпрограмму Драйвера DpWmiXxx . Если буфер слишком мал, драйвер устанавливает для параметра Состояние значение STATUS_BUFFER_TOO_SMALL и устанавливает для BufferUsed количество байтов, необходимое для возврата данных. Если переданный буфер достаточно велик, драйвер устанавливает для BufferUsed количество фактически используемых байтов.
[in] PriorityBoost
Задает системную константу, на которую увеличивается приоритет времени выполнения исходного потока, запрашивающего операцию. WMI вызывает IoCompleteRequest с PriorityBoost при завершении IRP. Дополнительные сведения о PriorityBoost см. в разделе IoCompleteRequest.
Возвращаемое значение
WmiCompleteRequest возвращает значение, переданное ему в параметре Status , если для параметра Status не задано значение STATUS_BUFFER_TOO_SMALL. Если для драйвера задано значение Состояние STATUS_BUFFER_TOO_SMALL, WmiCompleteRequest создает структуру WNODE_TOO_SMALL и возвращает STATUS_SUCCESS. Возвращаемое значение из WmiCompleteRequest должно быть возвращено драйвером в его подпрограмме DpWmiXxx .
Комментарии
Драйвер вызывает WmiCompleteRequest из подпрограммы DpWmiXxx после завершения всей обработки в этой подпрограмме или после того, как драйвер завершит всю обработку ожидающего IRP. WmiCompleteRequest заполняет WNODE_XXX любыми данными, возвращаемыми драйвером, и вызывает IoCompleteRequest для завершения IRP.
Драйвер всегда должен возвращать возвращаемое значение из WmiCompleteRequest в своей подпрограмме DpWmiXxx .
Драйвер не должен вызывать WmiCompleteRequest из своей подпрограммы DpWmiQueryRegInfo .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows 2000. |
Целевая платформа | Универсальное |
Верхняя часть | wmilib.h (включая Wmilib.h) |
Библиотека | Wmilib.lib |
IRQL | <= DISPATCH_LEVEL |