Structure FORMATETC (objidl.h)

Représente un format de Presse-papiers généralisé. Il est amélioré pour englober un appareil cible, l’aspect ou la vue des données et un indicateur de support de stockage. Là où l’on peut s’attendre à trouver un format de Presse-papiers, OLE utilise une structure de données FORMATETC à la place. Cette structure est utilisée comme paramètre dans les fonctions et méthodes OLE qui nécessitent des informations de format de données.

Syntaxe

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

Membres

cfFormat

Format du Presse-papiers qui vous intéresse. Il existe trois types de formats reconnus par OLE :

  • Formats d’échange standard, tels que CF_TEXT.
  • Formats d’application privés compris uniquement par l’application qui offre le format, ou par d’autres applications offrant des fonctionnalités similaires.
  • Formats OLE, qui sont utilisés pour créer des objets liés ou incorporés.

ptd

Pointeur vers une structure DVTARGETDEVICE contenant des informations sur l’appareil cible pour lequel les données sont composées. Une valeur NULL est utilisée chaque fois que le format de données spécifié est indépendant de l’appareil cible ou lorsque l’appelant ne se soucie pas de l’appareil utilisé. Dans ce dernier cas, si les données nécessitent un appareil cible, l’objet doit choisir un appareil par défaut approprié (souvent l’affichage des composants visuels). Les données obtenues à partir d’un objet avec un appareil cible NULL , comme la plupart des métafichiers, sont indépendantes de l’appareil cible. Les données obtenues sont généralement les mêmes que si l’utilisateur choisissait la commande Enregistrer sous dans le menu Fichier et sélectionné un format d’échange.

dwAspect

Indique la quantité de détails à contenir dans le rendu. Ce paramètre doit être l’une des valeurs d’énumération DVASPECT . Un format de Presse-papiers unique peut prendre en charge plusieurs aspects ou vues de l’objet. La plupart des méthodes de transfert et de mise en cache des données et des présentations passent des informations sur les aspects. Par exemple, un appelant peut demander l’image emblématique d’un objet, en utilisant le format du presse-papiers métafichier pour la récupérer. Notez qu’une seule valeur DVASPECT peut être utilisée dans dwAspect. Autrement dit, dwAspect ne peut pas être le résultat d’une opération BOOlean OR sur plusieurs valeurs DVASPECT .

lindex

Partie de l’aspect quand les données doivent être fractionnées au-delà des limites de page. La valeur la plus courante est -1, qui identifie toutes les données. Pour les aspects DVASPECT_THUMBNAIL et DVASPECT_ICON, lindex est ignoré.

tymed

Une des constantes d’énumération TYMED qui indique le type de support de stockage utilisé pour transférer les données de l’objet. Les données peuvent être transférées à l’aide de n’importe quel support approprié pour l’objet. Par exemple, les données peuvent être passées à l’aide de la mémoire globale, d’un fichier de disque ou d’objets de stockage structurés. Pour plus d’informations, consultez l’énumération TYMED .

Remarques

La structure FORMATETC est utilisée par les méthodes dans les interfaces de transfert et de présentation de données en tant que paramètre spécifiant les données en cours de transfert. Par exemple, la méthode IDataObject ::GetData utilise la structure FORMATETC pour indiquer exactement le type de données demandé par l’appelant.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau | Applications UWP]
En-tête objidl.h

Voir aussi

DVASPECT

IDataAdviseHolder

Idataobject

IEnumFORMATETC

IOleCache

OleCreate

OleCreateFromData

OleCreateLink

OleCreateLinkFromData

OleCreateLinkToFile

OleCreateStaticFromData

STATDATA

STGMEDIUM

TYMED