FltRequestFileInfoOnCreateCompletion 函数 (fltkernel.h)

微型筛选器在文件预创建期间调用 FltRequestFileInfoOnCreateCompletion,请求文件系统在创建后存储文件信息以供检索。

语法

NTSTATUS FLTAPI FltRequestFileInfoOnCreateCompletion(
  PFLT_FILTER        Filter,
  PFLT_CALLBACK_DATA Data,
  ULONG              InfoClassFlags
);

参数

Filter

唯一标识微型筛选器驱动程序的不透明筛选器指针。

Data

指向表示 I/O 创建操作的 FLT_CALLBACK_DATA 回调数据的指针。

InfoClassFlags

标记位掩码,指示文件系统在创建后期间应存储的文件信息类型以供检索。 可以是以下标志的任意组合:

意义
QoCFileStatInformation (0x00000001) 如果设置,文件系统会将文件统计信息信息存储在 QUERY_ON_CREATE_FILE_STAT_INFORMATION 结构中以供检索。
QoCFileLxInformation (0x00000002) 如果设置,文件系统将在 QUERY_ON_CREATE_FILE_LX_INFORMATION 结构中存储扩展的类似 Linux 的信息以供检索。
QoCFileEaInformation (0x00000004) 如果设置,文件系统会将扩展属性(EA)存储在 QUERY_ON_CREATE_EA_INFORMATION 结构中以供检索。
QoCFileUsnInformation (0x00000008) 如果设置,文件系统会将 USN 信息存储在 QUERY_ON_CREATE_USN_INFORMATION 结构中以供检索。

返回值

FltRequestFileInfoOnCreateCompletion 可以返回以下值之一:

返回代码 描述
STATUS_SUCCESS 文件系统已成功存储请求的文件信息。
STATUS_INSUFFICIENT_RESOURCES FltRequestFileInfoOnCreateCompletion 无法分配足够的内存来存储请求的文件信息。
STATUS_INVALID_PARAMETER_2 提供的回调数据对象不是基于 IRP 的创建操作。

言论

minifilter 可以通过在创建后期间调用 FltRetrieveFileInfoOnCreateCompletionExFltRetrieveFileInfoOnCreateCompletion 来检索文件信息。 以这种方式请求和检索文件信息时,微筛选器的性能通常更好,而不是稍后查询文件信息。

要求

要求 价值
标头 fltkernel.h (包括 Fltkernel.h)

另请参阅

FLT_CALLBACK_DATA

FltRetrieveFileInfoOnCreateCompletion

FltRetrieveFileInfoOnCreateCompletionEx