Condividi tramite


Metodo IOleCache::SetData (oleidl.h)

Inizializza la cache con i dati in un formato specificato e su un supporto specificato.

Sintassi

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

Parametri

[in] pformatetc

Puntatore a una struttura FORMATETC che specifica il formato dei dati della presentazione inseriti nella cache.

[in] pmedium

Puntatore a una struttura STGMEDIUM che specifica il supporto di archiviazione che contiene i dati della presentazione.

[in] fRelease

Indica la proprietà del supporto di archiviazione dopo il completamento del metodo. Se fRelease è TRUE, la cache accetta la proprietà, liberando il supporto al termine dell'uso. Quando fRelease è FALSE, il chiamante mantiene la proprietà ed è responsabile della liberazione del supporto. La cache può usare solo il supporto di archiviazione per la durata della chiamata.

Valore restituito

Questo metodo restituisce S_OK se l'operazione ha esito positivo. Gli altri valori restituiti possibili includono i seguenti:

Codice restituito Descrizione
DV_E_LINDEX
Il valore non è valido per pformatetc-lindex>. Attualmente è supportato solo -1.
DV_E_FORMATETC
La struttura FORMATETC non è valida.
DV_E_TYMED
Il valore non è valido per pformatetc-tymed>.
DV_E_DVASPECT
Il valore non è valido per pformatetc-dwAspect>.
OLE_E_BLANK
Esiste un oggetto non inizializzato.
DV_E_TARGETDEVICE
L'oggetto è statico e pformatetc-ptd> non è NULL.
STG_E_MEDIUMFULL
Il supporto di archiviazione è pieno.

Commenti

IOleCache::SetData viene in genere chiamato quando un oggetto viene creato dagli Appunti o tramite un'operazione di trascinamento e rilascio e i dati di incorpora origine vengono usati per creare l'oggetto.

IOleCache::SetData e IOleCache::InitCache sono molto simili. Esistono due differenze principali. La prima differenza è che, mentre IOleCache::InitCache inizializza la cache con il formato di presentazione fornito dall'oggetto dati, IOleCache::SetData lo inizializza con un singolo formato. In secondo luogo, il metodo IOleCache::SetData ignora il flag di ADVF_NODATA mentre IOleCache::InitCache obbedisce a questo flag.

Un contenitore può usare questo metodo per mantenere un singolo aspetto di un oggetto, ad esempio l'aspetto dell'icona dell'oggetto.

Requisiti

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

Vedi anche

IOleCache

IOleCache::Cache

IOleCache::SetData