Partilhar via


Método ClipboardObject.IDataObject.GetCanonicalFormatEtc

Fornece uma estrutura padrão de FORMATETC que é logicamente equivalente a uma estrutura mais complexa. Use este método para determinar se duas estruturas diferentes de FORMATETC retorna os mesmos dados, eliminando a necessidade para renderização duplicada.

Namespace:  Microsoft.VisualStudio.Data.Framework
Assembly:  Microsoft.VisualStudio.Data.Framework (em Microsoft.VisualStudio.Data.Framework.dll)

Sintaxe

'Declaração
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 não oferece suporte a implementações explícitas da interface.

Parâmetros

  • pformatectIn
    Tipo: array<FORMATETC[]

    Uma referência a uma estrutura de FORMATETC , passada por referência, que define o formato, o meio, e o dispositivo de destino que o chamador deseja usar para recuperar dados em uma chamada subsequente, como o IDataObject.GetData. O membro de tymed não é significativo nesse caso e deve ser ignorado.

  • pformatetcOut
    Tipo: array<FORMATETC[]

    Quando esse método retorna, contém um ponteiro para a estrutura de FORMATETC que contém as informações mais geral possível para uma renderização específica, tornando-o canônica o equivalente a pformatectIn. O chamador deve atribuir essa estrutura e o método de GetCanonicalFormatEtc deve preencher os dados. Para recuperar dados em uma chamada subsequente, como o IDataObject.GetData, o chamador o valor fornecido de pformatetcOut, a menos que o valor fornecido é nulluma referência nula (Nothing no Visual Basic). Esse valor é zero se o método retorna DATA_S_SAMEFORMATETC. O membro de tymed não é significativo nesse caso e deve ser ignorado. Este parâmetro é passado não inicializado.

Valor de retorno

Tipo: Int32
Esse método oferece suporte aos valores de retorno padrão E_INVALIDARG, E_FAIL, E_UNEXPECTED, e E_OUTOFMEMORY, bem como o seguinte:

Valor

Descrição

S_OK

A estrutura de FORMATETC retornado é diferente de aquele que foi passada.

DATA_S_SAMEFORMATETC

As estruturas de FORMATETC são as mesmas e uma referência nula é retornada no parâmetro de pformatetcOut .

DV_E_LINDEX

Há um valor inválido para lindex; atualmente, somente -1 são suportados.

DV_E_FORMATETC

Há um valor válido para o parâmetro de pformatectIn .

OLE_E_NOTRUNNING

O aplicativo não está sendo executado.

Implementações

IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC)

Comentários

Se o objeto da área de transferência envolve IDataObject existente (namespace de Microsoft.VisualStudio.OLE.Interop ), representantes deste método a chamada para o GetCanonicalFormatEtc correspondente desse namespace. Caso contrário, ele tenta converter a chamada para o GetCanonicalFormatEtc do espaço de System.Runtime.InteropServices.ComTypes , no caso do objeto da área de transferência pode envolver IDataObjectexistente.

Segurança do .NET Framework

Consulte também

Referência

ClipboardObject Classe

Namespace Microsoft.VisualStudio.Data.Framework