IOleCache::SetData-Methode (oleidl.h)

Initialisiert den Cache mit Daten in einem angegebenen Format und auf einem angegebenen Medium.

Syntax

HRESULT SetData(
  [in] FORMATETC *pformatetc,
  [in] STGMEDIUM *pmedium,
  [in] BOOL      fRelease
);

Parameter

[in] pformatetc

Ein Zeiger auf eine FORMATTC-Struktur , die das Format der Präsentationsdaten angibt, die im Cache platziert werden.

[in] pmedium

Ein Zeiger auf eine STGMEDIUM-Struktur , die das Speichermedium angibt, das die Präsentationsdaten enthält.

[in] fRelease

Gibt den Besitz des Speichermediums nach Abschluss der -Methode an. Wenn fReleaseTRUE ist, übernimmt der Cache den Besitz und gibt das Medium frei, wenn es mit der Verwendung fertig ist. Wenn fReleaseauf FALSE festgelegt ist, behält der Aufrufer den Besitz und ist für die Freigabe des Mediums verantwortlich. Der Cache kann das Speichermedium nur für die Dauer des Aufrufs verwenden.

Rückgabewert

Diese Methode gibt S_OK bei Erfolg zurück. Weitere mögliche Rückgabewerte:

Rückgabecode Beschreibung
DV_E_LINDEX
Der Wert ist für pformatetc-lindex> ungültig. Derzeit wird nur -1 unterstützt.
DV_E_FORMATETC
Die FORMATTC-Struktur ist ungültig.
DV_E_TYMED
Der Wert ist für pformatetc-tymed> ungültig.
DV_E_DVASPECT
Der Wert ist für pformatetc-dwAspect> ungültig.
OLE_E_BLANK
Es gibt ein nicht initialisiertes Objekt.
DV_E_TARGETDEVICE
Das Objekt ist statisch, und pformatetc-ptd> ist nichtNULL.
STG_E_MEDIUMFULL
Das Speichermedium ist voll.

Hinweise

IOleCache::SetData wird in der Regel aufgerufen, wenn ein Objekt aus der Zwischenablage oder durch einen Drag-and-Drop-Vorgang erstellt wird und Quelldaten einbetten verwendet werden, um das Objekt zu erstellen.

IOleCache::SetData und IOleCache::InitCache sind sehr ähnlich. Es gibt zwei Standard Unterschiede. Der erste Unterschied besteht darin, dass IOleCache::InitCache den Cache mit dem vom Datenobjekt bereitgestellten Präsentationsformat initialisiert, IOleCache::SetData ihn mit einem einzelnen Format initialisiert. Zweitens ignoriert die IOleCache::SetData-Methode das ADVF_NODATA-Flag, während IOleCache::InitCache diesem Flag gehorcht.

Ein Container kann diese Methode verwenden, um einen einzelnen Aspekt eines Objekts beizubehalten, z. B. den Symbolaspekt des Objekts.

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 oleidl.h

Weitere Informationen

IOleCache

IOleCache::Cache

IOleCache::SetData