FltFlushBuffers 函数 (fltkernel.h)

微型筛选器驱动程序使用 FltFlushBuffers 例程向文件系统发送给定文件的刷新请求。 使用 FltFlushBuffers2 指定不同的刷新类型选项。

语法

NTSTATUS FLTAPI FltFlushBuffers(
  [in] PFLT_INSTANCE Instance,
  [in] PFILE_OBJECT  FileObject
);

参数

[in] Instance

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

[in] FileObject

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

返回值

FltFlushBuffers 返回STATUS_SUCCESS或适当的 NTSTATUS 值,例如以下值之一:

返回代码 描述
STATUS_MEDIA_WRITE_PROTECTED
该文件驻留在受写保护的卷上。 这是一个错误代码。
STATUS_VOLUME_DISMOUNTED
该文件驻留在当前未装载的卷上。 这是一个错误代码。

言论

微型筛选器驱动程序可以调用 FltFlushBuffers,为给定文件向文件系统发出 IRP_MJ_FLUSH_BUFFERS 请求。 刷新作是同步的,并颁发给指定的 实例下面的实例

如果 fileObject 适用于文件,则文件缓存中的文件和元数据都将写入,并且基础存储将同步以刷新其缓存。 如果 FileObject 适用于卷,则文件系统将导致写入卷上所有修改的文件的文件数据和元数据,并将基础存储同步以刷新其缓存。 使用 FltFlushBuffers2 更精细地控制文件系统应执行的作刷新类型。

要求

要求 价值
目标平台 普遍
标头 fltkernel.h (包括 Fltkernel.h)
FltMgr.lib
IRQL PASSIVE_LEVEL

另请参阅

FltFlushBuffers2

IRP_MJ_FLUSH_BUFFERS