Saves an object to the specified stream.
HRESULT Save(
IStream *pStm, //Pointer to the stream where the object is to be
//saved
BOOL fClearDirty //Specifies whether to clear the dirty flag
);
IPersistStream::Save saves an object into the specified stream and indicates whether the object should reset its dirty flag.
The seek pointer is positioned at the location in the stream at which the object should begin writing its data. The object calls the ISequentialStream::Write method to write its data.
On exit, the seek pointer must be positioned immediately past the object data. The position of the seek pointer is undefined if an error returns.
Rather than calling IPersistStream::Save directly, you typically call the OleSaveToStream helper function which does the following:
If you call these methods directly, you can write other data into the stream after the CLSID before calling IPersistStream::Save.
The OLE-provided implementation of IPersistStream follows this same pattern.
The IPersistStream::Save method does not write the CLSID to the stream. The caller is responsible for writing the CLSID.
The IPersistStream::Save method can read from, write to, and seek in the stream; but it must not seek to a location in the stream before that of the seek pointer on entry.
Windows NT: Use version 3.1 or later.
Windows: Use Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in objidl.h.
IPersist::GetClassID, ISequentialStream::Write, OleSaveToStream