Aplicar atributos de interoperabilidade
The System.Runtime.InteropServices namespace fornece três categorias de atributos específicos de interoperabilidade: as aplicadas por você em time de design, as aplicadas por APIs e ferramentas de interoperabilidade COM durante o processo de conversão e as aplicadas tanto por você ou COM interop.
Se não estão familiarizados com a tarefa de aplicação de atributos para código gerenciado, consulte Estendendo metadados usando atributos.Como outros atributos personalizados, você pode aplicar atributos específicos de interoperabilidade para tipos, métodos, propriedades, parâmetros, campos e outros membros.
Atributos de time de design
Você pode ajustar o resultado do processo de conversão executado por interoperabilidade COM ferramentas e APIs usando atributos de time de design.A tabela a seguir descreve os atributos que você pode aplicar ao seu gerenciado código-fonte.Ferramentas de interoperabilidade COM, ocasionalmente, também podem aplicar os atributos descritos nesta tabela.
Atributo |
Descrição |
---|---|
Especifica o tipo deve ser empacotado usando o empacotador de automação ou um proxy personalizado e stub. |
|
Controla o tipo de interface gerado para uma classe. |
|
Identifica o CLSID do original coclass importados de uma biblioteca de tipos. Ferramentas de interoperabilidade de COM normalmente aplicam esse atributo. |
|
Indica que uma definição de interface ou coclass foi importada de uma biblioteca de tipos COM.O tempo de execução usa esse sinalizar para saber como ativar e realizar realizar marshaling o tipo.Esse atributo proíbe que o tipo sendo exportados para o biblioteca de tipos. Ferramentas de interoperabilidade de COM normalmente aplicam esse atributo. |
|
Indica que um método deve ser chamado quando o assembly estiver registrado para uso do COM, para que o código escrito por usuário pode ser executado durante o processo de inscrição. |
|
Identifica as interfaces que são fontes de eventos da classe. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica que um método deve ser chamado quando o assembly é cancelar o registro do COM, para que possa executar código escrito por usuário durante o processo. |
|
Processa tipos invisível para COM quando o valor do atributo é igual a False.Esse atributo pode ser aplicado para um tipo individual ou para um assembly inteiro para controlar a visibilidade COM.Por padrão, todos os tipos gerenciado e públicos estão visíveis, o atributo não é necessária para torná-las visíveis. |
|
Especifica o identificador de despacho COM (DISPID) de um método ou campo.Esse atributo contém DISPID para o método, campo ou propriedade, que ela descreve. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica a posição física de cada campo em uma classe quando usado com o StructLayoutAttribute, and the LayoutKind é definida como explícita. |
|
Especifica o identificador global exclusivo (GUID) de uma classe, interface ou uma biblioteca de tipo inteiro.A cadeia de caracteres passada para o atributo deve ser um formato de um argumento de construtor aceitável para o tipo de sistema.GUID. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica qual IDispatch interface implementação o common linguagem tempo de execução usa ao expor interfaces duplos e dispinterfaces para COM. |
|
Indica que os dados devem ser empacotados ao chamador.Pode ser usado para parâmetros de atributo. |
|
Controla como uma interface gerenciada é exposta a COM clientes (dual, derivada de IUnknown, ou apenas IDispatch). Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica que uma assinatura de método não-gerenciado espera um parâmetro LCID. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica como os dados em campos ou parâmetros devem ser empacotados entre código gerenciado e não gerenciado.O atributo sempre é opcional porque cada tipo de dados tem comportamento de marshaling padrão. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica que um parâmetro é opcional. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Indica que os dados em um campo ou o parâmetro devem ser empacotados de um objeto chamado volta a seu chamador. |
|
Suprime a transformação de assinatura HRESULT ou retval que normalmente ocorre durante as chamadas de interoperação.O atributo afeta marshaling, bem sistema autônomo exportar de biblioteca de tipo. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
|
Especifica o ProgID de uma classe do .NET estrutura.Pode ser usado para classes de atributo. |
|
Controla o layout físico dos campos de uma classe. Ferramentas de interoperabilidade COM podem aplicar esse atributo. |
Atributos de ferramenta de conversão
A tabela a seguir descreve os atributos que ferramentas de interoperabilidade COM se aplicam durante o processo de conversão.Você não aplicar esses atributos no time de design.
Atributo |
Descrição |
---|---|
Indica o alias de COM para um tipo de parâmetro ou campo.Pode ser usado para parâmetros de atributo, campos, ou valores de retorno. |
|
Indica que informações sobre uma classe ou interface foi perdidas quando ele foi importado de uma biblioteca de tipos a um assembly. |
|
Identifica a interface de fonte e a classe que implementa os métodos da interface do evento. |
|
Indica que o assembly foi importado originalmente de uma biblioteca de tipos COM.Esse atributo contém a definição de biblioteca de tipo de biblioteca de tipos do original. |
|
Contém o FUNCFLAGS que foram originalmente importados para esta função de biblioteca de tipos COM. |
|
Contém o TYPEFLAGS que foram originalmente importados para este tipo de biblioteca de tipos COM. |
|
Contém o VARFLAGS que foram originalmente importados para essa variável de biblioteca de tipos COM. |
Consulte também
Conceitos
Expondo componentes .NET estrutura para com.
Qualificação de tipos do .NET para interoperação
Empacotando um assembly para com.
Referência
System.Runtime.InteropServices