IoForwardIrpSynchronously 函数 (wdm.h)
IoForwardIrpSynchronously 例程将 IRP 发送到指定的驱动程序,并等待该驱动程序完成 IRP。
语法
BOOLEAN IoForwardIrpSynchronously(
[in] PDEVICE_OBJECT DeviceObject,
[in] PIRP Irp
);
参数
[in] DeviceObject
指定 IRP 发送到的驱动程序的设备对象。
[in] Irp
指定要发送的 IRP。
返回值
如果 IRP 成功发送,IoForwardIrpSynchronously 将返回 TRUE。 否则,它将返回 FALSE。
注解
使用 IoForwardIrpSynchronously 例程将当前 IRP 同步转发到堆栈中的下一个驱动程序。 (若要异步转发 IRP,请使用 IoCopyCurrentIrpStackLocationToNext、 IoCallDriver 和 IoSetCompletionRoutine 例程.)
IoForwardIrpSynchronously 例程将当前堆栈位置复制到下一个堆栈位置。 然后, DeviceObject 中指定的驱动程序会将该堆栈位置用作当前堆栈位置。 如果没有下一个堆栈位置可用,则例程返回 FALSE。 如果例程返回 TRUE,则 IRP 已发送到指定的驱动程序,并且该驱动程序已完成对此 IRP 的处理。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows XP 和更高版本的 Windows 中可用。 |
目标平台 | 通用 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
DDI 符合性规则 | PnpIrpCompletion (wdm) |