IoGetNextIrpStackLocation 函数 (wdm.h)

IoGetNextIrpStackLocation 例程为更高级别的驱动程序提供对 IRP 中下一个较低驱动程序的 I/O 堆栈位置的访问权限,以便调用方可以为较低级别的驱动程序设置它。

语法

__drv_aliasesMem PIO_STACK_LOCATION IoGetNextIrpStackLocation(
  [in] PIRP Irp
);

参数

[in] Irp

指向 IRP 的指针。

返回值

IoGetNextIrpStackLocation 返回指向给定 IRP 中下一级别驱动程序的 I/O 堆栈位置 的指针。

注解

将 IRP 传递到较低级驱动程序的每个驱动程序必须为下一个较低级驱动程序设置堆栈位置。 驱动程序调用 IoGetNextIrpStackLocation 以获取指向下一个较低级别的驱动程序的 I/O 堆栈位置的指针。

如果驱动程序将它收到的相同参数传递给下一低级驱动程序,则它应调用 IoCopyCurrentIrpStackLocationToNextIoSkipCurrentIrpStackLocation ,而不是获取指向下一低级堆栈位置的指针并手动复制参数。

返回值是指向 IO_STACK_LOCATION 结构的指针。 有关详细信息,请参阅 I/O 堆栈位置

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 桌面
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
IRQL 任何级别

另请参阅

IO_STACK_LOCATION

IoCallDriver

IoCopyCurrentIrpStackLocationToNext

IoGetCurrentIrpStackLocation

IoSetNextIrpStackLocation

IoSkipCurrentIrpStackLocation