Condividi tramite


Metodo IPersistStreamInit::Save (ocidl.h)

Salva un oggetto nel flusso specificato.

Sintassi

HRESULT Save(
  [in] LPSTREAM pStm,
  [in] BOOL     fClearDirty
);

Parametri

[in] pStm

Puntatore IStream al flusso in cui salvare 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
S_OK
Metodo completato correttamente.
STG_E_CANTSAVE
Impossibile salvare l'oggetto nel flusso. Questo errore può indicare, ad esempio, che l'oggetto contiene un altro oggetto che non è serializzabile in un flusso o che una chiamata ISequentialStream::Write ha restituito STG_E_CANTSAVE.
STG_E_MEDIUMFULL
Impossibile salvare l'oggetto perché non è disponibile spazio nel dispositivo di archiviazione.

Commenti

IPersistStreamInit::Save salva un oggetto nel flusso specificato e indica se l'oggetto deve reimpostare il flag dirty.

Il puntatore seek viene posizionato nella posizione nel flusso in cui l'oggetto deve iniziare a scrivere i dati. L'oggetto chiama il metodo ISequentialStream::Write per scrivere i dati.

All'uscita, il puntatore di ricerca deve essere posizionato immediatamente oltre i dati dell'oggetto. La posizione del puntatore seek non è definita se viene restituito un errore.

Note per gli implementatori

Il metodo IPersistStreamInit::Save non scrive il CLSID nel flusso. Il chiamante è responsabile della scrittura del CLSID.

Il metodo IPersistStreamInit::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.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ocidl.h

Vedi anche

IPersistStreamInit