IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC) Méthode

Définition

Fournit une structure FORMATETC standard qui équivaut logiquement à une structure plus complexe. Utilisez cette méthode pour déterminer si deux structures FORMATETC différentes retourneraient les mêmes données, rendant ainsi superflu le rendu en double.

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

Paramètres

formatIn
FORMATETC

Pointeur vers une structure FORMATETC, passée par référence, qui définit le format, le support et le périphérique cible que l'appelant souhaite utiliser pour récupérer des données dans un appel suivant, tel que GetData(FORMATETC, STGMEDIUM). Le membre TYMED n'est pas significatif dans ce cas et doit être ignoré.

formatOut
FORMATETC

Cette méthode retourne un pointeur vers une structure FORMATETC qui contient les informations les plus générales possibles pour un rendu spécifique, en le rendant canoniquement équivalent à formatetcIn. L'appelant doit allouer cette structure et la méthode GetCanonicalFormatEtc(FORMATETC, FORMATETC) doit remplir les données. Pour récupérer des données dans un appel suivant, tel que GetData(FORMATETC, STGMEDIUM), l'appelant utilise la valeur fournie de formatOut, à moins que la valeur fournie ne soit null. Cette valeur est null si la méthode retourne DATA_S_SAMEFORMATETC. Le membre TYMED n'est pas significatif dans ce cas et doit être ignoré. Ce paramètre est passé sans être initialisé.

Retours

Cette méthode prend en charge les valeurs de retour E_INVALIDARG, E_UNEXPECTED et E_OUTOFMEMORY standard, ainsi que les suivantes :

Valeur Description
S_OK La structure FORMATETC retournée est différente de celle qui a été passée.
DATA_S_SAMEFORMATETC Les structures FORMATETC sont identiques et la valeur null est retournée dans le paramètre formatOut.
DV_E_LINDEX Il existe une valeur non valide pour lindex ; actuellement, seule la valeur -1 est prise en charge.
DV_E_FORMATETC Il existe une valeur non valide pour le paramètre pFormatetc.
OLE_E_NOTRUNNING L'application n'est pas en cours d'exécution.

Remarques

Pour plus d’informations, consultez Méthode IDataObject ::GetCanonicalFormatEtc.

S’applique à