IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC) Metodo

Definizione

Fornisce una struttura standard FORMATETC equivalente logicamente a una struttura più complessa. Utilizzare questo metodo per determinare se due strutture diverse FORMATETC restituiscono gli stessi dati, rimuovendo la necessità di eseguire il rendering duplicato.

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

Parametri

formatIn
FORMATETC

Puntatore a una FORMATETC struttura, passata per riferimento, che definisce il formato, il supporto e il dispositivo di destinazione che il chiamante vuole usare per recuperare i dati in una chiamata successiva, ad GetData(FORMATETC, STGMEDIUM)esempio . Il TYMED membro non è significativo in questo caso e deve essere ignorato.

formatOut
FORMATETC

Quando termina, questo metodo contiene un puntatore a una FORMATETC struttura che contiene le informazioni più generali possibili per un rendering specifico, rendendolo in modo canonico equivalente a formatetcIn. Il chiamante deve allocare questa struttura e il GetCanonicalFormatEtc(FORMATETC, FORMATETC) metodo deve compilare i dati. Per recuperare i dati in una chiamata successiva, ad GetData(FORMATETC, STGMEDIUM)esempio , il chiamante usa il valore fornito di formatOut, a meno che il valore specificato non sia null. Questo valore è null se il metodo restituisce DATA_S_SAMEFORMATETC. Il TYMED membro non è significativo in questo caso e deve essere ignorato. Questo parametro viene passato non inizializzato.

Valori restituiti

Questo metodo supporta i valori restituiti standard E_INVALIDARG, E_UNEXPECTED e E_OUTOFMEMORY, nonché i seguenti:

Valore Descrizione
S_OK La struttura restituita FORMATETC è diversa da quella passata.
DATA_S_SAMEFORMATETC Le FORMATETC strutture sono uguali e null vengono restituite nel formatOut parametro .
DV_E_LINDEX Esiste un valore non valido per lindex. Attualmente è supportato solo -1.
DV_E_FORMATETC Esiste un valore non valido per il formatIn parametro .
OLE_E_NOTRUNNING L'applicazione non è in esecuzione.

Commenti

Per altre informazioni, vedere Metodo IDataObject::GetCanonicalFormatEtc.

Si applica a