IoGetTopLevelIrp 函数 (wdm)

IoGetTopLevelIrp例程返回当前线程的TopLevelIrp字段的值。

语法

PIRP IoGetTopLevelIrp();

返回值

IoGetTopLevelIrp 返回当前线程的 TopLevelIrp 字段的值。

注解

IoGetTopLevelIrp 可以返回 NULL,它是特定于文件系统的任意值 (如指向当前 IRP) 的指针或下表中列出的某个标志。

如果当前线程不包含文件系统以上的资源, IoGetTopLevelIrp 将返回 NULL

如果文件系统是当前线程的顶级组件,则 IoGetTopLevelIrp 将返回指向当前 IRP 的指针。

如果文件系统以外的组件是当前线程的顶级组件,则 IoGetTopLevelIrp 将返回下列标志之一:

标志 含义
FSRTL_FSP_TOP_LEVEL_IRP 这是一个递归调用。
FSRTL_CACHE_TOP_LEVEL_IRP 缓存管理器是当前线程的顶级组件。
FSRTL_MOD_WRITE_TOP_LEVEL_IRP 修改后的页编写器是当前线程的顶级组件。
FSRTL_FAST_IO_TOP_LEVEL_IRP 缓存管理器是当前线程的顶级组件,当前线程位于快速 i/o 路径中。

要求

   
目标平台 通用
标头 wdm (包括 Ntifs、Wdm)
Library Ntoskrnl.exe
.DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

请参阅

IoSetTopLevelIrp