Condividi tramite


IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC) Metodo

Definizione

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

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

Un puntatore a una struttura FORMATETC, passato per riferimento, che definisce formato, supporto e periferica di destinazione che il chiamante desidera utilizzare per recuperare dati in una chiamata successiva quale GetData(FORMATETC, STGMEDIUM). Il membro TYMED non è significativo in questo caso e deve essere ignorato.

formatOut
FORMATETC

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

Restituisce

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

Valore Descrizione
S_OK La struttura FORMATETC restituita è diversa da quella passata.
DATA_S_SAMEFORMATETC Le strutture FORMATETC sono uguali e nel parametro formatOut viene restituito null.
DV_E_LINDEX È presente un valore non valido per lindex; attualmente, è supportato solo il valore -1.
DV_E_FORMATETC È presente un valore non valido per il parametro pFormatetc.
OLE_E_NOTRUNNING L'applicazione non è in esecuzione.

Commenti

Per altre informazioni, vedere Metodo IDataObject::GetCanonicalFormatEtc.

Si applica a