This method ensures that any internal buffers maintained by the byte array object are written out to the backing storage.
At a Glance
Header file: | Objbase.h |
Windows CE versions: | 2.0 and later |
Syntax
HRESULT Flush( void );
Return Values
One of the values described in the following table is returned.
Value | Description |
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 COM-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.