Freigeben über


FORMATETC-Struktur (objidl.h)

Stellt ein generalisiertes Zwischenablageformat dar. Es wird erweitert, um ein Zielgerät, den Aspekt oder die Ansicht der Daten und einen Speichermediumindikator einzuschließen. Wo man möglicherweise ein Zwischenablageformat finden kann, verwendet OLE stattdessen eine FORMATTC-Datenstruktur . Diese Struktur wird als Parameter in OLE-Funktionen und -Methoden verwendet, die Datenformatinformationen erfordern.

Syntax

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

Elemente

cfFormat

Das Format der Zwischenablage von Interesse. Es gibt drei Arten von Formaten, die von OLE erkannt werden:

  • Standard-Austauschformate, z. B. CF_TEXT.
  • Private Anwendungsformate, die nur von der Anwendung verstanden werden, die das Format anbietet, oder von anderen Anwendungen, die ähnliche Features bieten.
  • OLE-Formate, die zum Erstellen verknüpfter oder eingebetteter Objekte verwendet werden.

ptd

Ein Zeiger auf eine DVTARGETDEVICE-Struktur , die Informationen zum Zielgerät enthält, für das die Daten zusammengesetzt werden. Ein NULL-Wert wird verwendet, wenn das angegebene Datenformat unabhängig vom Zielgerät ist oder wenn der Aufrufer sich nicht um das verwendete Gerät kümmert. Falls für die Daten ein Zielgerät erforderlich ist, sollte das Objekt ein geeignetes Standardgerät (häufig die Anzeige für visuelle Komponenten) auswählen. Daten, die von einem Objekt mit einem NULL-Zielgerät abgerufen werden, z. B. die meisten Metadateien, sind unabhängig vom Zielgerät. Die resultierenden Daten sind in der Regel identisch mit dem, wenn der Benutzer im Menü "Datei" den Befehl "Speichern unter" ausgewählt und ein Austauschformat ausgewählt hat.

dwAspect

Gibt an, wie viele Details im Rendering enthalten sein sollen. Dieser Parameter sollte einer der DVASPECT-Enumerationswerte sein. Ein einzelnes Zwischenablageformat kann mehrere Aspekte oder Ansichten des Objekts unterstützen. Die meisten Methoden zum Übertragen und Zwischenspeichern von Daten und Präsentationen übergeben Seiteninformationen. Beispielsweise kann ein Aufrufer das iconic-Bild eines Objekts mithilfe des Metadatei-Zwischenablageformats anfordern, um es abzurufen. Beachten Sie, dass nur ein DVASPECT-Wert in dwAspect verwendet werden kann. Das heißt, dwAspect kann nicht das Ergebnis eines booleschen OR-Vorgangs für mehrere DVASPECT-Werte sein.

lindex

Ein Teil des Aspekts, wenn die Daten über Seitengrenzen aufgeteilt werden müssen. Der häufigste Wert ist -1, der alle Daten identifiziert. Nullbasierter Index sollte für CFSTR_FILECONTENTS Format verwendet werden. Für die Aspekte DVASPECT_THUMBNAIL und DVASPECT_ICON wird lindex ignoriert.

tymed

Eine der TYMED-Enumerationskonstanten, die den Typ des Speichermediums angeben, mit dem die Daten des Objekts übertragen werden. Daten können mit jedem Medium übertragen werden, was für das Objekt sinnvoll ist. Beispielsweise können Daten mithilfe des globalen Speichers, einer Datenträgerdatei oder strukturierten Speicherobjekten übergeben werden. Weitere Informationen finden Sie in der TYMED-Aufzählung .

Bemerkungen

Die FORMATTC-Struktur wird von Methoden in den Datenübertragungs- und Präsentationsschnittstellen als Parameter verwendet, der die übertragenen Daten angibt. Beispielsweise verwendet die IDataObject::GetData-Methode die FORMATETC-Struktur , um genau anzugeben, welche Art von Daten der Aufrufer anfordert.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Mindestanforderungen für unterstützte Server Windows 2000 Server [Desktop-Apps | UWP-Apps]
Header objidl.h

Siehe auch

DVASPECT

IDataAdviseHolder

IDataObject

IEnumFORMATETC

IOleCache

OleCreate

OleCreateFromData

OleCreateLink

OleCreateLinkFromData

OleCreateLinkToFile

OleCreateStaticFromData

STATDATA

STGMEDIUM

TYMED