IoForwardIrpSynchronously 例程将 IRP 发送到指定的驱动程序,并等待该驱动程序完成 IRP。
语法
BOOLEAN IoForwardIrpSynchronously(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);
参数
[in] DeviceObject
指定 IRP 发送到的驱动程序的设备对象。
[in] Irp
指定要发送的 IRP。
返回值
IoForwardIrpSynchronously 如果成功发送 IRP,则返回 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) | 
| 库 | NtosKrnl.lib | 
| DLL | NtosKrnl.exe | 
| IRQL | <= APC_LEVEL | 
| DDI 符合性规则 | PnpIrpCompletion(wdm) |