FlushFileBuffers
The FlushFileBuffers
function clears the buffers for the specified file and causes all buffered data
to be written to the file.
BOOL FlushFileBuffers(
HANDLE hFile |
// open handle to
file whose buffers are to be flushed |
); |
|
Parameters
hFile
An open file
handle. The function flushes this file s buffers. The file handle must have
GENERIC_WRITE access to the file.
If hFile
is a handle to a communications device, the function only flushes the transmit
buffer.
If hFile
is a handle to the server end of a named pipe, the function does not return until
the client has read all buffered data from the pipe.
Windows
NT: The function fails if hFile
is a handle to console output. That is because console output is not buffered.
The function returns FALSE, and GetLastError returns
ERROR_INVALID_HANDLE.
Windows
95: The function does nothing if hFile
is a handle to console output. That is because console output is not buffered.
The function returns TRUE, but it does nothing.
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero. To get extended error information,
call GetLastError
Remarks
The WriteFile
and WriteFileEx functions typically write data to an internal buffer
that the operating system writes to disk on a regular basis. The FlushFileBuffers
function writes all of the buffered information for the specified file to disk.
You can pass
the same file handle used with the _lread, _lwrite, _lcreat,
and related functions to FlushFileBuffers.
See Also