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 可以通过在创建后期间调用 FltRetrieveFileInfoOnCreateCompletionEx 或 FltRetrieveFileInfoOnCreateCompletion 来检索文件信息。 以这种方式请求和检索文件信息时,微筛选器的性能通常更好,而不是稍后查询文件信息。
要求
要求 | 价值 |
---|---|
标头 | fltkernel.h (包括 Fltkernel.h) |