Condividi tramite


Classe IPersistStorageImpl

Questa classe implementa l'interfaccia IPersist Archiviazione.

Importante

Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.

Sintassi

template <class T>
class ATL_NO_VTABLE IPersistStorageImpl : public IPersistStorage

Parametri

T
Classe derivata da IPersistStorageImpl.

Membri

Metodi pubblici

Nome Descrizione
IPersist Archiviazione Impl::GetClassID Recupera il CLSID dell'oggetto.
IPersist Archiviazione Impl::HandsOff Archiviazione Indica all'oggetto di rilasciare tutti gli oggetti di archiviazione e di attivare la modalità HandsOff. L'implementazione ATL restituisce S_OK.
IPersist Archiviazione Impl::InitNew Inizializza una nuova risorsa di archiviazione.
IPersist Archiviazione Impl::IsDirty Controlla se i dati dell'oggetto sono stati modificati dopo l'ultimo salvataggio.
IPersist Archiviazione Impl::Load Carica le proprietà dell'oggetto dalla risorsa di archiviazione specificata.
IPersist Archiviazione Impl::Save Salva le proprietà dell'oggetto nella risorsa di archiviazione specificata.
IPersist Archiviazione Impl::SaveCompleted Notifica a un oggetto che può tornare alla modalità Normal per scrivere nell'oggetto di archiviazione. L'implementazione ATL restituisce S_OK.

Osservazioni:

IPersistStorageImplimplementa l'interfaccia IPersist Archiviazione che consente a un client di richiedere che l'oggetto carichi e salvi i dati persistenti usando un archivio.

L'implementazione di questa classe richiede la classe T per rendere disponibile un'implementazione dell'interfaccia IPersistStreamInit tramite QueryInterface. Ciò significa in genere che la classe T deve derivare da IPersistStreamInitImpl, fornire una voce per IPersistStreamInit nella mappa COM e usare una mappa delle proprietà per descrivere i dati persistenti della classe.

Esercitazione su ATL per articolicorrelati, creazione di un progetto ATL

Gerarchia di ereditarietà

IPersistStorage

IPersistStorageImpl

Requisiti

Intestazione: atlcom.h

IPersist Archiviazione Impl::GetClassID

Recupera il CLSID dell'oggetto.

STDMETHOD(GetClassID)(CLSID* pClassID);

Osservazioni:

Vedere IPersist::GetClassID in Windows SDK.

IPersist Archiviazione Impl::HandsOff Archiviazione

Indica all'oggetto di rilasciare tutti gli oggetti di archiviazione e di attivare la modalità HandsOff.

STDMETHOD(HandsOffStorage)(void);

Valore restituito

Restituisce S_OK.

Osservazioni:

Vedi IPersist Archiviazione::HandsOff Archiviazione in Windows SDK.

IPersist Archiviazione Impl::InitNew

Inizializza una nuova risorsa di archiviazione.

STDMETHOD(InitNew)(IStorage*);

Osservazioni:

L'implementazione ATL delega all'interfaccia IPersistStreamInit .

Vedi IPersist Archiviazione:InitNew in Windows SDK.

IPersist Archiviazione Impl::IsDirty

Controlla se i dati dell'oggetto sono stati modificati dopo l'ultimo salvataggio.

STDMETHOD(IsDirty)(void);

Osservazioni:

L'implementazione ATL delega all'interfaccia IPersistStreamInit .

Vedi IPersist Archiviazione:IsDirty in Windows SDK.

IPersist Archiviazione Impl::Load

Carica le proprietà dell'oggetto dalla risorsa di archiviazione specificata.

STDMETHOD(Load)(IStorage* pStorage);

Osservazioni:

L'implementazione ATL delega all'interfaccia IPersistStreamInit . Load usa un flusso denominato "Contents" per recuperare i dati dell'oggetto. Il metodo Save crea originariamente questo flusso.

Vedi IPersist Archiviazione:Load in Windows SDK.

IPersist Archiviazione Impl::Save

Salva le proprietà dell'oggetto nella risorsa di archiviazione specificata.

STDMETHOD(Save)(IStorage* pStorage, BOOL fSameAsLoad);

Osservazioni:

L'implementazione ATL delega all'interfaccia IPersistStreamInit . Quando Save viene chiamato per la prima volta, crea un flusso denominato "Contents" nella risorsa di archiviazione specificata. Questo flusso viene quindi usato nelle chiamate successive a Save e nelle chiamate a Load.

Vedi IPersist Archiviazione:Save in Windows SDK.

IPersist Archiviazione Impl::SaveCompleted

Notifica a un oggetto che può tornare alla modalità Normal per scrivere nell'oggetto di archiviazione.

STDMETHOD(SaveCompleted)(IStorage*);

Valore restituito

Restituisce S_OK.

Osservazioni:

Vedi IPersist Archiviazione:SaveCompleted in Windows SDK.

Vedi anche

Archiviazione e Flussi
Classe IPersistStreamInitImpl
Classe IPersistPropertyBagImpl
Cenni preliminari sulla classe