Freigeben über


IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC) Methode

Definition

Stellt eine Standard-FORMATETC-Struktur bereit, die einer komplexeren Struktur logisch entspricht. Mit dieser Methode können Sie bestimmen, ob zwei unterschiedliche FORMATETC-Strukturen dieselben Daten zurückgeben würden. Dadurch müssen Sie nicht doppelt rendern.

public:
 int GetCanonicalFormatEtc(System::Runtime::InteropServices::ComTypes::FORMATETC % formatIn, [Runtime::InteropServices::Out] System::Runtime::InteropServices::ComTypes::FORMATETC % formatOut);
public int GetCanonicalFormatEtc (ref System.Runtime.InteropServices.ComTypes.FORMATETC formatIn, out System.Runtime.InteropServices.ComTypes.FORMATETC formatOut);
abstract member GetCanonicalFormatEtc : FORMATETC * FORMATETC -> int
Public Function GetCanonicalFormatEtc (ByRef formatIn As FORMATETC, ByRef formatOut As FORMATETC) As Integer

Parameter

formatIn
FORMATETC

Ein Zeiger auf eine FORMATETC-Struktur, der als Verweis übergeben wird und das Format, das Medium und das Zielgerät definiert, mit denen der Aufrufer Daten in einen späteren Aufruf abrufen möchte, z. B. GetData(FORMATETC, STGMEDIUM). Der TYMED-Member hat in diesem Fall keine Bedeutung und sollte ignoriert werden.

formatOut
FORMATETC

Enthält nach dem Beenden dieser Methode einen Zeiger auf eine FORMATETC-Struktur, die sehr allgemeine Informationen für ein bestimmtes Rendering enthält, wodurch sie kanonisch äquivalent zu formatetcIn ist. Der Aufrufer muss diese Struktur zuordnen, und die GetCanonicalFormatEtc(FORMATETC, FORMATETC)-Methode muss die Daten ausfüllen. Zum Abrufen der Daten in einem späteren Aufruf wie GetData(FORMATETC, STGMEDIUM) verwendet der Aufrufer den von formatOut bereitgestellten Wert, sofern dieser nicht null ist. Dieser Wert ist null, wenn die Methode DATA_S_SAMEFORMATETC zurückgibt. Der TYMED-Member hat in diesem Fall keine Bedeutung und sollte ignoriert werden. Dieser Parameter wird nicht initialisiert übergeben.

Gibt zurück

Diese Methode unterstützt die Standardrückgabewerte E_INVALIDARG, E_UNEXPECTED und E_OUTOFMEMORY sowie die folgenden Werte:

Wert BESCHREIBUNG
S_OK Die zurückgegebene FORMATETC-Struktur unterscheidet sich von der übergebenen Struktur.
DATA_S_SAMEFORMATETC Die FORMATETC-Strukturen sind identisch, und im formatOut-Parameter wird null zurückgegeben.
DV_E_LINDEX Ein Wert für lindex ist ungültig. Derzeit wird nur -1 unterstützt.
DV_E_FORMATETC Ein Wert für den pFormatetc-Parameter ist ungültig.
OLE_E_NOTRUNNING Die Anwendung wird nicht ausgeführt.

Hinweise

Weitere Informationen finden Sie unter IDataObject::GetCanonicalFormatEtc-Methode.

Gilt für: