IPersistStorageImpl-Klasse

Diese Klasse implementiert die IPersistStorage-Schnittstelle .

Wichtig

Diese Klasse und ihre Member können nicht in Anwendungen verwendet werden, die in der Windows-Runtime ausgeführt werden.

Syntax

template <class T>
class ATL_NO_VTABLE IPersistStorageImpl : public IPersistStorage

Parameter

T
Ihre Klasse, abgeleitet von IPersistStorageImpl.

Member

Öffentliche Methoden

Name Beschreibung
IPersistStorageImpl::GetClassID Ruft die CLSID des Objekts ab.
IPersistStorageImpl::HandsOffStorage Weist das Objekt an, alle Speicherobjekte freizugeben und in den HandsOff-Modus zu wechseln. Die ATL-Implementierung gibt S_OK zurück.
IPersistStorageImpl::InitNew Initialisiert einen neuen Speicher.
IPersistStorageImpl::IsDirty Überprüft, ob sich die Daten des Objekts seit dem letzten Speichern geändert haben.
IPersistStorageImpl::Load Lädt die Eigenschaften des Objekts aus dem angegebenen Speicher.
IPersistStorageImpl::Save Speichert die Eigenschaften des Objekts im angegebenen Speicher.
IPersistStorageImpl::SaveCompleted Benachrichtigt ein Objekt, dass es in den Normalmodus zurückkehren kann, um in das Speicherobjekt zu schreiben. Die ATL-Implementierung gibt S_OK zurück.

Hinweise

IPersistStorageImpl implementiert die IPersistStorage-Schnittstelle , mit der ein Client anfordern kann, dass das Objekt geladen und seine persistenten Daten mithilfe eines Speichers gespeichert wird.

Die Implementierung dieser Klasse erfordert, dass die Klasse T eine Implementierung der IPersistStreamInit Schnittstelle über QueryInterface. In der Regel bedeutet dies, dass die Klasse T von IPersistStreamInitImpl abgeleitet werden soll, einen Eintrag für IPersistStreamInit die COM-Zuordnung bereitstellen und eine Eigenschaftszuordnung verwenden, um die persistenten Daten der Klasse zu beschreiben.

Verwandte Artikel ATL-Lernprogramm, Erstellen eines ATL-Projekts

Vererbungshierarchie

IPersistStorage

IPersistStorageImpl

Anforderungen

Kopfzeile: atlcom.h

IPersistStorageImpl::GetClassID

Ruft die CLSID des Objekts ab.

STDMETHOD(GetClassID)(CLSID* pClassID);

Hinweise

Siehe "IPersist::GetClassID " im Windows SDK.

IPersistStorageImpl::HandsOffStorage

Weist das Objekt an, alle Speicherobjekte freizugeben und in den HandsOff-Modus zu wechseln.

STDMETHOD(HandsOffStorage)(void);

Rückgabewert

Gibt S_OK zurück.

Hinweise

Siehe IPersistStorage::HandsOffStorage im Windows SDK.

IPersistStorageImpl::InitNew

Initialisiert einen neuen Speicher.

STDMETHOD(InitNew)(IStorage*);

Hinweise

Die ATL-Implementierung delegiert an die IPersistStreamInit-Schnittstelle .

Siehe IPersistStorage:InitNew im Windows SDK.

IPersistStorageImpl::IsDirty

Überprüft, ob sich die Daten des Objekts seit dem letzten Speichern geändert haben.

STDMETHOD(IsDirty)(void);

Hinweise

Die ATL-Implementierung delegiert an die IPersistStreamInit-Schnittstelle .

Siehe IPersistStorage:IsDirty im Windows SDK.

IPersistStorageImpl::Load

Lädt die Eigenschaften des Objekts aus dem angegebenen Speicher.

STDMETHOD(Load)(IStorage* pStorage);

Hinweise

Die ATL-Implementierung delegiert an die IPersistStreamInit-Schnittstelle . Load verwendet einen Datenstrom namens "Contents", um die Daten des Objekts abzurufen. Die Save-Methode erstellt ursprünglich diesen Datenstrom.

Siehe "IPersistStorage:Load " im Windows SDK.

IPersistStorageImpl::Save

Speichert die Eigenschaften des Objekts im angegebenen Speicher.

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

Hinweise

Die ATL-Implementierung delegiert an die IPersistStreamInit-Schnittstelle . Beim Save ersten Aufruf wird ein Datenstrom mit dem Namen "Contents" für den angegebenen Speicher erstellt. Dieser Datenstrom wird dann in späteren Aufrufen und Save in Aufrufen von Load verwendet.

Siehe "IPersistStorage:Save " im Windows SDK.

IPersistStorageImpl::SaveCompleted

Benachrichtigt ein Objekt, dass es in den Normalmodus zurückkehren kann, um in das Speicherobjekt zu schreiben.

STDMETHOD(SaveCompleted)(IStorage*);

Rückgabewert

Gibt S_OK zurück.

Hinweise

Siehe IPersistStorage:SaveCompleted im Windows SDK.

Siehe auch

Speicher und Datenströme
IPersistStreamInitImpl-Klasse
IPersistPropertyBagImpl-Klasse
Klassenübersicht