FltSupportsFileContextsEx 函数 (fltkernel.h)

FltSupportsFileContextsEx 例程确定文件系统或筛选器管理器是否支持给定文件的文件上下文。

语法

BOOLEAN FLTAPI FltSupportsFileContextsEx(
  [in]           PFILE_OBJECT  FileObject,
  [in, optional] PFLT_INSTANCE Instance
);

参数

[in] FileObject

指向表示正在查询其文件上下文支持的文件的文件对象的指针。 此参数是必需的,不能为 NULL

[in, optional] Instance

调用方不透明的实例指针。 此参数是可选的,可以为 NULL。 有关此参数的详细信息,请参阅本页的“备注”部分。

返回值

如果文件系统或筛选器管理器支持文件上下文,则 FltSupportsFileContextsEx 返回 TRUE;否则为 FALSE

注解

微筛选器驱动程序可以调用 FltSupportsFileContextsEx 例程,以确定基础文件系统或筛选器管理器是否支持 FileObject 表示的文件的文件上下文,而无需分配上下文并尝试设置它。 如果文件不支持上下文类型,则微筛选器无法将上下文附加到该文件。

对于每个文件仅支持单个数据流的文件系统 ((例如 FAT) ),文件上下文等效于流上下文。 此类文件系统通常支持流上下文,但不支持文件上下文。 相反,筛选器管理器使用文件系统对流上下文的现有支持来提供文件上下文支持。 对于附加到这些文件系统的微筛选器实例,FltSupportsFileContext 返回FALSE,而 FltSupportsFileContextsEx 在为实例参数) 传递有效的非 NULL 值时,则 FltSupportsFileContextsEx 返回 TRUE (。

如果为 Instance 参数提供了非 NULL 值,则如果文件系统或筛选器管理器支持文件上下文的文件上下文,则 FltSupportsFileContextsEx 返回 TRUE;否则为 FALSE

如果 Instance 参数为 NULL,则仅当文件系统支持文件上下文时 ,FltSupportsFileContextsEx 才返回 TRUE 。 否则,即使筛选器管理器支持文件上下文,它也会返回 FALSE

请注意,文件系统可能支持某些类型的文件的文件上下文,但对于其他文件类型则不支持。 例如,NTFS 和 FAT 不支持分页文件的文件上下文。

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

要求

要求
最低受支持的客户端 此例程在 Windows Vista 及更高版本上可用。
目标平台 通用
标头 fltkernel.h (包括 Fltkernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

另请参阅

FltAllocateContext

FltDeleteContext

FltDeleteFileContext

FltGetFileContext

FltReleaseContext

FltSetFileContext

FltSupportsFileContexts