ZwFlushBuffersFile function (ntifs.h)
The ZwFlushBuffersFile routine is called by a file system filter driver to send a flush request for the specified file to the file system.
Syntax
NTSYSAPI NTSTATUS ZwFlushBuffersFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock
);
Parameters
[in] FileHandle
Handle returned by ZwCreateFile or ZwOpenFile for the file whose buffers will be flushed. This parameter is required and cannot be NULL.
[out] IoStatusBlock
Address of the caller's I/O status block. This parameter is required and cannot be NULL.
Return value
ZwFlushBuffersFile returns STATUS_SUCCESS or an appropriate NTSTATUS value, such as one of the following:
Return code | Description |
---|---|
|
The file resides on a write-protected volume; this is an error code. |
|
The file resides on a volume that is not currently mounted; this is an error code. |
Remarks
A file system filter driver can call ZwFlushBuffersFile to issue an IRP_MJ_FLUSH_BUFFERS request to the file system for a given file. The flush operation is synchronous.
Minifilter drivers should call FltFlushBuffers instead of calling ZwFlushBuffersFile.
Callers of ZwFlushBuffersFile must be running at IRQL = PASSIVE_LEVEL and with special kernel APCs enabled.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista |
Target Platform | Universal |
Header | ntifs.h (include Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (see Remarks section) |
DDI compliance rules | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |
See also
Using Nt and Zw Versions of the Native System Services Routines