Metodo IPersistStream::Save (objidl.h)
Salva un oggetto nel flusso specificato.
Sintassi
HRESULT Save(
[in] IStream *pStm,
[in] BOOL fClearDirty
);
Parametri
[in] pStm
Puntatore IStream al flusso in cui deve essere salvato l'oggetto.
[in] fClearDirty
Indica se il flag modificato deve essere cancellato al termine del salvataggio. Se TRUE, il flag deve essere cancellato. Se FALSE, il flag deve essere lasciato invariato.
Valore restituito
Questo metodo può restituire i valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Metodo completato correttamente. |
|
L'oggetto non è riuscito a salvarlo nel flusso. Questo errore potrebbe indicare, ad esempio, che l'oggetto contiene un altro oggetto che non è serializzabile in un flusso o che una chiamata ISequentialStream::Write restituita STG_E_CANTSAVE. |
|
Impossibile salvare l'oggetto perché non è stato lasciato spazio nel dispositivo di archiviazione. |
Commenti
IPersistStream::Save salva un oggetto nel flusso specificato e indica se l'oggetto deve reimpostare il flag sporco.
Il puntatore di ricerca viene posizionato nella posizione del flusso in cui l'oggetto deve iniziare a scrivere i dati. L'oggetto chiama il metodo ISequentialStream::Write per scrivere i dati.
In uscita, il puntatore di ricerca deve essere posizionato immediatamente oltre i dati dell'oggetto. La posizione del puntatore di ricerca non è definita se viene restituito un errore.
Note ai chiamanti
Anziché chiamare direttamente IPersistStream::Save , in genere si chiama la funzione helper OleSaveToStream che esegue le operazioni seguenti:- Chiama GetClassID per ottenere CLSID dell'oggetto.
- Chiama la funzione WriteClassStm per scrivere il CLSID dell'oggetto nel flusso.
- Chiama IPersistStream::Save.
L'implementazione fornita da OLE di IPersistStream segue questo stesso modello.
Note per gli implementatori
Il metodo IPersistStream::Save non scrive CLSID nel flusso. Il chiamante è responsabile della scrittura del CLSID.Il metodo IPersistStream::Save può leggere, scrivere e cercare nel flusso; ma non deve cercare una posizione nel flusso prima di quella del puntatore di ricerca all'ingresso.
Note sul moniker URL
Salva un moniker URL in un flusso. Il formato binario del moniker URL è la stringa URL in Unicode (può essere una stringa URL completa o parziale, vedere CreateURLMonikerEx per informazioni dettagliate). Questo valore è rappresentato come numero ULONG di caratteri seguiti da molti caratteri Unicode.Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | objidl.h |