IoGetCurrentIrpStackLocation routine
IoGetCurrentIrpStackLocation 返回调用者在指定IRP中的 I/O stack location。
Syntax
PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(
_In_ PIRP Irp
);
Parameters
Irp [in]
指向 IRP的指针。
Return value
IoGetCurrentIrpStackLocation 返回指向 IO_STACK_LOCATION 结构的一个指针。它包含了驱动程序的I/O stack location。
Remarks
每个驱动程序都必须为每个发向它的IRP调用 IoGetCurrentIrpStackLocation 以便于获取当前请求的任何参数。即使一个驱动程序提供了每一个IRP_MJ_XXX 的派遣例程,驱动也 必须使用IRP里它的 I/O stack location 以决定它被请求的操作。
如果一个驱动程序传递与它接收到的相同参数给下一层驱动程序,应当调用 IoCopyCurrentIrpStackLocationToNext 或者是IoSkipCurrentIrpStackLocation 而不是手动获取一个指向下一个低一级的stack location然后拷贝参数。
Requirements
Target platform | Desktop |
Version | Available starting with Windows 2000. |
Header | Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h) |
IRQL | Any level |
See also