ILockBytes::Flush
Ensures that
any internal buffers maintained by the ILockBytes
HRESULT
Flush(void);
Return Values
S_OK
The flush
operation was successful.
STG_E_ACCESSDENIED
The caller
does not have permission to access the byte array.
STG_E_MEDIUMFULL
The flush
operation is not completed because there is no space left on the storage
device.
E_FAIL
General
failure writing data.
STG_E_TOOMANYFILESOPEN
Under certain
circumstances, Flush does a dump-and-close to flush, which can lead to a
return value of STG_E_TOOMANYFILESOPEN if no file handles are available.
STG_E_INVALIDHANDLE
An underlying
file has been prematurely closed, or the correct floppy disk has been replaced
by an invalid one.
Remarks
ILockBytes::Flush flushes internal buffers to the underlying storage
device.
The
OLE-provided implementation of compound files calls this method during a
transacted commit operation to provide a two-phase commit process that protects
against loss of data.
See Also