IoForwardIrpSynchronously 函数 (wdm.h)

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,请使用 IoCopyCurrentIrpStackLocationToNextIoCallDriverIoSetCompletionRoutine 例程。

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)

另请参阅

IoCallDriver

IoCopyCurrentIrpStackLocationToNext

IoSetCompletionRoutine