FltGetFileContext 函数 (fltkernel.h)

FltGetFileContext 例程检索由给定微型筛选器驱动程序实例为文件设置的上下文。

语法

NTSTATUS FLTAPI FltGetFileContext(
  [in]  PFLT_INSTANCE Instance,
  [in]  PFILE_OBJECT  FileObject,
  [out] PFLT_CONTEXT  *Context
);

参数

[in] Instance

调用方不透明实例指针。 此参数是必需的,不能 NULL

[in] FileObject

文件的文件对象指针。 此参数是必需的,不能 NULL

[out] Context

指向接收上下文地址的调用方分配的变量的指针。 此参数是必需的,不能设置为 NULL。

返回值

FltGetFileContext 成功返回请求的文件上下文时返回STATUS_SUCCESS。 否则,它将返回适当的 NTSTATUS 值,例如以下值之一:

返回代码 描述
STATUS_NOT_FOUND 此时在此文件中找不到匹配的上下文,因此 FltMgr上下文 设置为NULL_CONTEXT。 这是一个错误代码。
STATUS_NOT_SUPPORTED 此文件不支持文件上下文。 这是一个错误代码。

言论

有关上下文的详细信息,请参阅 关于小型筛选器上下文

微型筛选器驱动程序调用 FltGetFileContext 来检索它为给定文件设置的文件上下文。

FltGetFileContext 递增 上下文 参数指向的上下文的引用计数。 当不再需要此上下文指针时,调用方必须通过调用 FltReleaseContext来递减其引用计数。 因此,对 FltGetFileContext 的每个成功调用都必须匹配对 FltReleaseContext的后续调用。

若要设置文件上下文,请调用 FltSetFileContext

若要分配新上下文,请调用 FltAllocateContext

若要删除文件上下文,请调用 FltDeleteFileContextFltDeleteContext

若要确定给定文件是否支持文件上下文,请调用 FltSupportsFileContextsFltSupportsFileContextsEx

要求

要求 价值
最低支持的客户端 Windows Vista
目标平台 普遍
标头 fltkernel.h (包括 Fltkernel.h)
FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

另请参阅

FLT_CONTEXT_REGISTRATION

FltAllocateContext

FltDeleteContext

FltDeleteFileContext

FltReleaseContext

FltSetFileContext

FltSupportsFileContexts

FltSupportsFileContextsEx