fltQueryEaFile 函数 (fltkernel.h)

FltQueryEaFile 返回有关扩展属性 (EA) 文件值的信息。

语法

NTSTATUS FLTAPI FltQueryEaFile(
  [in]            PFLT_INSTANCE Instance,
  [in]            PFILE_OBJECT  FileObject,
  [out]           PVOID         ReturnedEaData,
  [in]            ULONG         Length,
  [in]            BOOLEAN       ReturnSingleEntry,
  [in, optional]  PVOID         EaList,
  [in]            ULONG         EaListLength,
  [in, optional]  PULONG        EaIndex,
  [in]            BOOLEAN       RestartScan,
  [out, optional] PULONG        LengthReturned
);

参数

[in] Instance

查询Ea 操作要发送到的微筛选器驱动程序实例的不透明实例指针。 实例必须附加到文件所在的卷。

[in] FileObject

文件的文件对象指针。

[out] ReturnedEaData

指向调用方提供的 FILE_FULL_EA_INFORMATION结构化输入缓冲区的指针,其中将返回扩展属性值。

[in] Length

ReturnedEaData 参数指向的缓冲区的长度(以字节为单位)。

[in] ReturnSingleEntry

如果 FltQueryEaFile 应仅返回找到的第一个条目,则设置为 TRUE

[in, optional] EaList

指向调用方提供的 FILE_GET_EA_INFORMATION结构化输入缓冲区的指针,该缓冲区指定要查询的扩展属性。 此参数是可选的,可以为 NULL

[in] EaListLength

EaList 参数指向的缓冲区的长度(以字节为单位)。

[in, optional] EaIndex

要开始扫描文件的扩展属性列表的条目的索引。 如果 EaList 参数指向非空列表,则忽略此参数。 此参数是可选的,可以为 NULL

[in] RestartScan

如果 FltQueryEaFile 应在文件的 extended-attribute 列表中的第一个条目处开始扫描,则设置为 TRUE。 如果此参数未设置为 TRUE,则扫描将从之前调用 FltQueryEaFile 恢复。

[out, optional] LengthReturned

指向调用方分配的变量的指针,该变量接收 ReturnedEaData 缓冲区中返回的信息的大小(以字节为单位)。 此参数是可选的,可以为 NULL

返回值

FltQueryEaFile 返回STATUS_SUCCESS或相应的 NTSTATUS 值,如下所示:

返回代码 说明
STATUS_EAS_NOT_SUPPORTED
文件系统不支持扩展属性。 这是错误代码。
STATUS_FLT_DELETING_OBJECT
正在拆除实例或卷。 这是错误代码。
STATUS_INSUFFICIENT_RESOURCES
FltQueryEaFile 遇到池分配失败。 这是错误代码。

要求

要求
最低受支持的客户端 适用于 SP4、Windows XP SP3、Windows Server 2003 SP1 和 Windows 操作系统更高版本的 Microsoft Windows 2000 更新汇总 1。
目标平台 通用
标头 fltkernel.h (包括 Fltkernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL PASSIVE_LEVEL

另请参阅

FILE_FULL_EA_INFORMATION

FILE_GET_EA_INFORMATION

FltSetEaFile

IoCheckEaBufferValidity