Udostępnij za pośrednictwem


DataObject.IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC) Metoda

Definicja

Zapewnia standardową FORMATETC strukturę, która jest logicznie równoważna bardziej złożonej strukturze. Użyj tej metody, aby określić, czy dwie różne FORMATETC struktury będą zwracać te same dane, co eliminuje konieczność renderowania duplikatów.

 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

Parametry

pformatetcIn
FORMATETC

Wskaźnik do FORMATETC struktury przekazanej przez odwołanie definiujący format, średni i docelowy urządzenie, którego obiekt wywołujący chce użyć do pobrania danych w kolejnym wywołaniu, takim jak GetData(FORMATETC, STGMEDIUM). W TYMED tym przypadku element członkowski nie jest znaczący i należy go zignorować.

pformatetcOut
FORMATETC

Gdy ta metoda zwraca, zawiera wskaźnik do FORMATETC struktury, która zawiera najbardziej ogólne informacje możliwe do określonego renderowania, co czyni go kanonicznie równoważnym z formatetcIn. Obiekt wywołujący musi przydzielić tę strukturę, a GetCanonicalFormatEtc(FORMATETC, FORMATETC) metoda musi wypełnić dane. Aby pobrać dane w kolejnym wywołaniu, takim jak GetData(FORMATETC, STGMEDIUM), obiekt wywołujący używa podanej formatOutwartości , chyba że podana wartość to null. Ta wartość jest null taka, jeśli metoda zwraca wartość DATA_S_SAMEFORMATETC. W TYMED tym przypadku element członkowski nie jest znaczący i należy go zignorować. Ten parametr jest przekazywany jako niezainicjowany.

Zwraca

Ta metoda obsługuje standardowe wartości zwracane E_INVALIDARG, E_UNEXPECTED i E_OUTOFMEMORY, a także następujące:

Wartość Opis
S_OK Zwrócona FORMATETC struktura różni się od tej, która została przekazana.
DATA_S_SAMEFORMATETC Struktury FORMATETC są takie same i null są zwracane w parametrze formatOut .
DV_E_LINDEX Istnieje nieprawidłowa wartość dla lindexparametru ; obecnie obsługiwana jest tylko wartość -1.
DV_E_FORMATETC Parametr ma nieprawidłową wartość pFormatetc .
OLE_E_NOTRUNNING Aplikacja nie jest uruchomiona.

Implementuje

Atrybuty

Uwagi

Ten element jest jawną implementacją członków. Można go używać tylko wtedy, gdy DataObject wystąpienie jest rzutowe do interfejsu IDataObject .

Dotyczy