Saves an object opened in transacted mode into the specified storage object.
| IPersistStorage * pPS,
||//Points to the object to be saved
| IStorage * pStg,
||//Points to the destination storage to which pPS is saved
| BOOL fSameAsLoad
||//Indicates whether the object was loaded from pstg or not
Points to the object to be saved.
Points to the destination storage object to which pPS
is to be saved.
TRUE indicates that pStg
is the same storage object from which the object was loaded or created; FALSE
indicates that pstg
was loaded or created from a different storage object.
Indicates the object was successfully saved.
Indicates the object could not be saved due to lack of disk space.
See also the IPersistStorage::Save
method for other error return values.
helper function handles the common scenario in which an object is open in
transacted mode and is to be saved into the specified storage object which uses
the OLE-provided compound file implementation. Other scenarios can be handled
with the IPersistStorage
function does the following:
- Calls the IPersistStorage::GetClassID method to get the CLSID.
- Writes the CLSID to the storage object using the WriteClassStg function.
- Calls the IPersistStorage::Save method to save the object.
- If there were no errors on the save; calls the IPersistStorage::Commit method to commit the changes.
Static objects are saved into a stream called CONTENTS. Static metafile
objects get saved in "placeable metafile format" and static DIB data gets saved in
"DIB file format." These formats are defined to be the OLE standards for
metafile and DIB. All data transferred using an IStream
interface or a file (that is; via IDataObject::GetDataHere
) must be in these formats. Also; all objects whose default file format is a
metafile or DIB must write their data into a CONTENTS stream using these
- Software for developers
Software for Android Developers
- More information resources
Unix Manual Pages