Freigeben über


DataObject.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.

 virtual int System.Runtime.InteropServices.ComTypes.IDataObject.GetCanonicalFormatEtc(System::Runtime::InteropServices::ComTypes::FORMATETC % pformatetcIn, [Runtime::InteropServices::Out] System::Runtime::InteropServices::ComTypes::FORMATETC % pformatetcOut) = System::Runtime::InteropServices::ComTypes::IDataObject::GetCanonicalFormatEtc;
[System.Security.SecurityCritical]
int IDataObject.GetCanonicalFormatEtc (ref System.Runtime.InteropServices.ComTypes.FORMATETC pformatetcIn, out System.Runtime.InteropServices.ComTypes.FORMATETC pformatetcOut);
int IDataObject.GetCanonicalFormatEtc (ref System.Runtime.InteropServices.ComTypes.FORMATETC pformatetcIn, out System.Runtime.InteropServices.ComTypes.FORMATETC pformatetcOut);
[<System.Security.SecurityCritical>]
abstract member System.Runtime.InteropServices.ComTypes.IDataObject.GetCanonicalFormatEtc : FORMATETC * FORMATETC -> int
override this.System.Runtime.InteropServices.ComTypes.IDataObject.GetCanonicalFormatEtc : FORMATETC * FORMATETC -> int
abstract member System.Runtime.InteropServices.ComTypes.IDataObject.GetCanonicalFormatEtc : FORMATETC * FORMATETC -> int
override this.System.Runtime.InteropServices.ComTypes.IDataObject.GetCanonicalFormatEtc : FORMATETC * FORMATETC -> int
Function GetCanonicalFormatEtc (ByRef pformatetcIn As FORMATETC, ByRef pformatetcOut As FORMATETC) As Integer Implements IDataObject.GetCanonicalFormatEtc

Parameter

pformatetcIn
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.

pformatetcOut
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.

Implementiert

Attribute

Hinweise

Bei diesem Member handelt es sich um eine explizite Schnittstellenmemberimplementierung. Er kann nur verwendet werden, wenn die DataObject-Instanz in eine IDataObject-Schnittstelle umgewandelt wird.

Gilt für: