Функция IoForwardIrpSynchronously (wdm.h)
Подпрограмма IoForwardIrpSynchronously отправляет IRP указанному драйверу и ожидает, пока этот драйвер завершит IRP.
Синтаксис
BOOLEAN IoForwardIrpSynchronously(
[in] PDEVICE_OBJECT DeviceObject,
[in] PIRP Irp
);
Параметры
[in] DeviceObject
Указывает объект устройства драйвера, которому отправляется IRP.
[in] Irp
Указывает IRP для отправки.
Возвращаемое значение
IoForwardIrpSynchronously возвращает значение TRUE , если IRP успешно отправлен. В противном случае возвращается значение FALSE.
Комментарии
Используйте процедуру IoForwardIrpSynchronously для синхронной пересылки текущего IRP в следующий драйвер в стеке. (Для асинхронной пересылки IRP используйте процедуры IoCopyCurrentIrpStackLocationToNext, IoCallDriver и IoSetCompletionRoutine .)
Подпрограмма IoForwardIrpSynchronously копирует текущее расположение стека в следующее расположение стека. Затем это расположение стека используется в качестве текущего расположения стека драйвером, указанным в DeviceObject. Если следующее расположение стека недоступно, подпрограмма возвращает значение FALSE. Если подпрограмма возвращает значение TRUE, то IRP была отправлена указанному драйверу, и этот драйвер завершил обработку этого IRP.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows XP и более поздних версиях Windows. |
Целевая платформа | Универсальное |
Верхняя часть | wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
Правила соответствия DDI | PnpIrpCompletion(wdm) |