Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
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