Udostępnij za pośrednictwem


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 zwracają te same dane, usuwając potrzebę zduplikowanego renderowania.

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

Parametry

formatIn
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 powinien zostać zignorowany.

formatOut
FORMATETC

Gdy ta metoda zostanie zwrócona, zawiera wskaźnik do FORMATETC struktury zawierającej najbardziej ogólne informacje możliwe do określonego renderowania, co czyni ją kanonicznie równoważną formatetcInwartościom . 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 wartości formatOut, chyba że dostarczona wartość to null. Ta wartość jest null taka, jeśli metoda zwraca DATA_S_SAMEFORMATETCwartość . W TYMED tym przypadku element członkowski nie jest znaczący i powinien zostać zignorowany. 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 struktura różni się od tej FORMATETC , która została przekazana.
DATA_S_SAMEFORMATETC Struktury FORMATETC są takie same i null są zwracane w parametrze formatOut .
DV_E_LINDEX Dla parametru jest nieprawidłowa wartość lindex; obecnie obsługiwana jest tylko wartość -1.
DV_E_FORMATETC Dla parametru istnieje nieprawidłowa pFormatetc wartość.
OLE_E_NOTRUNNING Aplikacja nie jest uruchomiona.

Uwagi

Aby uzyskać więcej informacji, zobacz IDataObject::GetCanonicalFormatEtc, metoda.

Dotyczy