FsRtlLookupPerFileObjectContext 函数 (ntifs.h)

对于“旧版”文件系统筛选器驱动程序, FsRtlLookupPerFileObjectContext 函数检索以前与文件对象关联的上下文信息。

语法

PFSRTL_PER_FILEOBJECT_CONTEXT FsRtlLookupPerFileObjectContext(
  [in]           PFILE_OBJECT FileObject,
  [in, optional] PVOID        OwnerId,
  [in, optional] PVOID        InstanceId
);

参数

[in] FileObject

指向要查询其上下文信息的文件对象的指针。

[in, optional] OwnerId

指向调用方分配的变量的指针,该变量唯一标识每个文件对象上下文结构的拥有筛选器。 此变量的格式特定于筛选器驱动程序。

[in, optional] InstanceId

指向调用方分配的变量的指针,该变量可用于区分由同一筛选器驱动程序创建的每个文件对象上下文结构。 此变量的格式特定于筛选器驱动程序。 此参数是可选的,可以为 NULL

返回值

FsRtlLookupPerFileObjectContext 返回指向找到的第一个匹配的每文件对象上下文的指针。 如果未找到匹配项, FsRtlLookupPerFileObjectContext 将返回 NULL

注解

“旧版”文件系统筛选器驱动程序调用 FsRtlLookupPerFileObjectContext 来检索文件对象的每文件对象上下文结构。 上下文结构包含筛选器驱动程序为文件对象维护的上下文信息。 此上下文结构之前必须通过调用 FsRtlInsertPerFileObjectContext 函数与文件对象相关联。

如果FSRTL_PER_FILEOBJECT_CONTEXT结构嵌入在按文件对象定义的筛选器上下文结构中,则 CONTAINING_RECORD 宏可用于获取指向筛选器定义结构头的指针。

若要初始化每个文件对象的上下文结构,请使用 FsRtlInitPerFileObjectContext 宏。

若要将初始化的每个文件对象上下文结构与文件对象相关联,请使用 FsRtlInsertPerFileObjectContext 函数。

若要删除与文件对象关联的每文件对象上下文结构,请使用 FsRtlRemovePerFileObjectContext 函数。

注意 文件系统微筛选器驱动程序不得使用 FsRtlXxxPerFileObjectContext 函数。 相反,微筛选器可以使用 FltXxxContext 函数将上下文信息与文件对象相关联。 有关完整列表,请参阅 FSRTL_PER_FILEOBJECT_CONTEXT 主题。
 

要求

要求
最低受支持的客户端 Windows Vista
目标平台 通用
标头 ntifs.h (包括 Fltkernel.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

FSRTL_PER_FILEOBJECT_CONTEXT

FsRtlInitPerFileObjectContext

FsRtlInsertPerFileObjectContext

FsRtlRemovePerFileObjectContext