IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC) Método

Definição

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

public int GetCanonicalFormatEtc (ref System.Runtime.InteropServices.ComTypes.FORMATETC formatIn, out System.Runtime.InteropServices.ComTypes.FORMATETC formatOut);

Parâmetros

formatIn
FORMATETC

Um ponteiro para uma estrutura FORMATETC, passado por referência, que define o formato, o meio e o dispositivo de destino que o chamador gostaria de usar para recuperar dados em uma chamada subsequente, como GetData(FORMATETC, STGMEDIUM). O membro TYMED não é significativo nesse caso e deve ser ignorado.

formatOut
FORMATETC

Quando esse método retorna, contém um ponteiro para uma FORMATETC estrutura que contém as informações mais gerais possíveis para uma renderização específica, tornando-a canonicamente equivalente a formatetcIn. O chamador deve alocar esta estrutura e o método GetCanonicalFormatEtc(FORMATETC, FORMATETC) deve preencher os dados. Para recuperar dados em uma chamada subsequente, como GetData(FORMATETC, STGMEDIUM), o chamador usa o valor fornecido de formatOut, a menos que o valor fornecido seja null. Esse valor será null se o método retornar DATA_S_SAMEFORMATETC. O membro TYMED não é significativo nesse caso e deve ser ignorado. Este parâmetro é passado não inicializado.

Retornos

Este método é compatível com os valores retornados padrão E_INVALIDARG, E_UNEXPECTED e E_OUTOFMEMORY e também com os seguintes:

Valor Descrição
S_OK A estrutura FORMATETC retornada é diferente da que foi passada.
DATA_S_SAMEFORMATETC As estruturas FORMATETC são iguais e null é retornado no parâmetro formatOut.
DV_E_LINDEX Há um valor inválido para lindex; no momento, apenas -1 é compatível.
DV_E_FORMATETC Há um valor inválido para o parâmetro pFormatetc.
OLE_E_NOTRUNNING O aplicativo não está em execução.

Comentários

Para obter mais informações, consulte Método IDataObject::GetCanonicalFormatEtc.

Aplica-se a

Produto Versões
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1