Struttura FORMATETC (objidl.h)

Rappresenta un formato generalizzato degli Appunti. È migliorato per includere un dispositivo di destinazione, l'aspetto o la visualizzazione dei dati e un indicatore medio di archiviazione. In caso di attesa di trovare un formato appunti, OLE usa invece una struttura di dati FORMATETC . Questa struttura viene usata come parametro nelle funzioni e nei metodi OLE che richiedono informazioni sul formato dei dati.

Sintassi

typedef struct tagFORMATETC {
  CLIPFORMAT     cfFormat;
  DVTARGETDEVICE *ptd;
  DWORD          dwAspect;
  LONG           lindex;
  DWORD          tymed;
} FORMATETC, *LPFORMATETC;

Members

cfFormat

Formato degli Appunti di interesse. Esistono tre tipi di formati riconosciuti da OLE:

  • Formati di interscambio standard, ad esempio CF_TEXT.
  • I formati delle applicazioni private sono compresi solo dall'applicazione che offre il formato o da altre applicazioni che offrono funzionalità simili.
  • Formati OLE, usati per creare oggetti collegati o incorporati.

ptd

Puntatore a una struttura DVTARGETDEVICE contenente informazioni sul dispositivo di destinazione per cui vengono composti i dati. Un valore NULL viene usato ogni volta che il formato di dati specificato è indipendente dal dispositivo di destinazione o quando il chiamante non è interessato a quale dispositivo viene usato. In quest'ultimo caso, se i dati richiedono un dispositivo di destinazione, l'oggetto deve scegliere un dispositivo predefinito appropriato (spesso la visualizzazione per i componenti visivi). I dati ottenuti da un oggetto con un dispositivo di destinazione NULL , ad esempio la maggior parte dei metafile, sono indipendenti dal dispositivo di destinazione. I dati risultanti sono in genere uguali a se l'utente sceglie il comando Salva con nome dal menu File e seleziona un formato di interscambio.

dwAspect

Indica la quantità di dettaglio che deve essere contenuta nel rendering. Questo parametro deve essere uno dei valori di enumerazione DVASPECT . Un singolo formato appunti può supportare più aspetti o visualizzazioni dell'oggetto. La maggior parte dei dati e il trasferimento della presentazione e i metodi di memorizzazione nella cache passano le informazioni sugli aspetti. Ad esempio, un chiamante potrebbe richiedere un'immagine iconica di un oggetto, usando il formato degli Appunti metafile per recuperarlo. Si noti che è possibile usare un solo valore DVASPECT in dwAspect. Ovvero, dwAspect non può essere il risultato di un'operazione OR booleana su diversi valori DVASPECT .

lindex

Parte dell'aspetto quando i dati devono essere suddivisi tra limiti di pagina. Il valore più comune è -1, che identifica tutti i dati. Per gli aspetti DVASPECT_THUMBNAIL e DVASPECT_ICON, lindex viene ignorato.

tymed

Una delle costanti di enumerazione TYMED che indicano il tipo di supporto di archiviazione usato per trasferire i dati dell'oggetto. I dati possono essere trasferiti usando qualsiasi mezzo ha senso per l'oggetto. Ad esempio, i dati possono essere passati usando memoria globale, un file di disco o oggetti di archiviazione strutturati. Per altre informazioni, vedere l'enumerazione TYMED .

Commenti

La struttura FORMATETC viene usata dai metodi nelle interfacce di trasferimento e presentazione dei dati come parametro che specificano i dati trasferiti. Ad esempio, il metodo IDataObject::GetData usa la struttura FORMATETC per indicare esattamente il tipo di dati richiesto dal chiamante.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Intestazione objidl.h

Vedi anche

DVASPECT

IDataAdviseHolder

Idataobject

IEnumFORMATETC

IOleCache

OleCreate

OleCreateFromData

OleCreateLink

OleCreateLinkFromData

OleCreateLinkToFile

OleCreateStaticFromData

STATDATA

STGMEDIUM

TYMED