Partager via


ClipboardObject.IDataObject.GetCanonicalFormatEtc, méthode

Fournit une structure FORMATETC standard qui équivaut logiquement à une structure plus complexe.Utilisez cette méthode pour déterminer si deux structures différentes d' FORMATETC retournent les mêmes données, en supprimant le besoin de rendu en double.

Espace de noms :  Microsoft.VisualStudio.Data.Framework
Assembly :  Microsoft.VisualStudio.Data.Framework (dans Microsoft.VisualStudio.Data.Framework.dll)

Syntaxe

'Déclaration
Private Function GetCanonicalFormatEtc ( _
    pformatectIn As FORMATETC(), _
    pformatetcOut As FORMATETC() _
) As Integer Implements IDataObject.GetCanonicalFormatEtc
int IDataObject.GetCanonicalFormatEtc(
    FORMATETC[] pformatectIn,
    FORMATETC[] pformatetcOut
)
private:
virtual int GetCanonicalFormatEtc(
    array<FORMATETC>^ pformatectIn, 
    array<FORMATETC>^ pformatetcOut
) sealed = IDataObject::GetCanonicalFormatEtc
private abstract GetCanonicalFormatEtc : 
        pformatectIn:FORMATETC[] * 
        pformatetcOut:FORMATETC[] -> int 
private override GetCanonicalFormatEtc : 
        pformatectIn:FORMATETC[] * 
        pformatetcOut:FORMATETC[] -> int 
JScript ne prend pas en charge les implémentations d'interfaces explicites.

Paramètres

  • pformatectIn
    Type : array<Microsoft.VisualStudio.OLE.Interop.FORMATETC[]
    Une référence à une structure d' FORMATETC , passée par référence, qui définit le format, la prise en charge, et le périphérique cible que l'appelant souhaite utiliser pour récupérer des données dans un appel suivant, tel que l' IDataObject.GetData.Le membre tymed n'est pas significatif dans ce cas et doit être ignoré.
  • pformatetcOut
    Type : array<Microsoft.VisualStudio.OLE.Interop.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 à pformatectIn.L'appelant doit allouer cette structure et la méthode GetCanonicalFormatEtc doit remplir les données.Pour récupérer des données dans un appel suivant, tel que l' IDataObject.GetData, les utilisations d'appeler la valeur fournie d' pformatetcOut, à moins que la valeur fournie est nullune référence null (Nothing en Visual Basic).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é.

Valeur de retour

Type : System.Int32
Cette méthode prend les valeurs de retour standard E_INVALIDARG, E_FAIL, E_UNEXPECTED, et E_OUTOFMEMORY, ainsi que les éléments suivants :

Valeur

Description

S_OK

La structure retournée par FORMATETC est différente de celle qui a été passée.

DATA_S_SAMEFORMATETC

Les structures de FORMATETC sont identiques et une référence null est retournée dans le paramètre d' pformatetcOut .

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 pformatectIn.

OLE_E_NOTRUNNING

L'application n'est pas en cours d'exécution.

Implémentations

IDataObject.GetCanonicalFormatEtc(array<FORMATETC[], array<FORMATETC[])

Notes

Si l'objet du presse-papiers encapsule IDataObject existant (de l'espace de noms d' Microsoft.VisualStudio.OLE.Interop ), les délégués de cette méthode l'appel à l' GetCanonicalFormatEtc correspondant de cet espace de noms.Sinon, il tente de convertir l'appel à l' GetCanonicalFormatEtc de l'espace de noms d' System.Runtime.InteropServices.ComTypes , si l'objet du presse-papiers peut encapsuler IDataObjectexistant.

Sécurité .NET Framework

Voir aussi

Référence

ClipboardObject Classe

Microsoft.VisualStudio.Data.Framework, espace de noms