Freigeben über


OleSave-Funktion (ole2.h)

Speichert ein im Transaktionsmodus geöffnetes Objekt im angegebenen Speicherobjekt.

Syntax

HRESULT OleSave(
  [in] LPPERSISTSTORAGE pPS,
  [in] LPSTORAGE        pStg,
  [in] BOOL             fSameAsLoad
);

Parameter

[in] pPS

Zeiger auf die IPersistStorage-Schnittstelle für das zu speichernde Objekt.

[in] pStg

Zeiger auf die IStorage-Schnittstelle auf dem Zielspeicherobjekt, in dem das in pPS angegebene Objekt gespeichert werden soll.

[in] fSameAsLoad

TRUE gibt an, dass pStg dasselbe Speicherobjekt ist, aus dem das Objekt geladen oder erstellt wurde. FALSE gibt an, dass pStg aus einem anderen Speicherobjekt geladen oder erstellt wurde.

Rückgabewert

Diese Funktion gibt bei Erfolg S_OK zurück. Weitere mögliche Werte sind:

Rückgabecode Beschreibung
STGMEDIUM_E_FULL
Das Objekt konnte aufgrund fehlenden Speicherplatzes nicht gespeichert werden.

Diese Funktion kann auch einen der von der IPersistStorage::Save-Methode zurückgegebenen Fehlerwerte zurückgeben.

Hinweise

Die OleSave-Hilfsfunktion verarbeitet die allgemeine Situation, in der ein Objekt im Transaktionsmodus geöffnet ist und dann im angegebenen Speicherobjekt gespeichert werden soll, das die von OLE bereitgestellte zusammengesetzte Dateiimplementierung verwendet. Der Transacted-Modus bedeutet, dass Änderungen am Objekt gepuffert werden, bis eine von IStorage::Commit oder IStorage::Revert aufgerufen wird. Aufrufer können andere Situationen verarbeiten, indem sie die Schnittstellen IPersistStorage und IStorage direkt aufrufen.

OleSave führt folgendes aus:

Hinweis Statische Objekte werden in einem Stream namens CONTENTS gespeichert. Statische Metadateiobjekte werden im "platzierbaren Metadateiformat" und statische DIB-Daten im "DIB-Dateiformat" gespeichert. Diese Formate werden als OLE-Standards für Metadatei und DIB definiert. Alle Daten, die über eine IStream-Schnittstelle oder eine Datei (d. h. über IDataObject::GetDataHere) übertragen werden, müssen in diesen Formaten vorliegen. Außerdem müssen alle Objekte, deren Standarddateiformat eine Metadatei oder DIB ist, ihre Daten mit diesen Standardformaten in einen CONTENTS-Stream schreiben.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ole2.h
Bibliothek Ole32.lib
DLL Ole32.dll
APIs ext-ms-win-com-ole32-l1-1-3 (eingeführt in Windows 10, Version 10.0.10240)

Weitere Informationen

IPersistStorage

IStorage