Compartilhar via


Personalizando o Runtime Callable Wrappers

O common language runtime produz uma runtime callable wrapper (RCW) dos metadados em um assembly de interoperabilidade. Ao contrário de outros assemblies, assemblies de interoperabilidade são gerados pela importação de bibliotecas de tipos. Embora o processo de importação geralmente produz precisos assemblies de interoperabilidade, há casos, quando você pode (ou deve) modifica o assembly de interoperabilidade para produzir um RCW personalizado.

Há várias razões por que você pode personalizar um RCW, como:

  • Um ou mais tipos requerem informações adicionais de empacotamento.

  • Uma biblioteca de tipo contém vários tipos especializados que são irreconhecíveis o empacotador.

  • Uma biblioteca de tipo grande pode incluir os tipos que são desnecessários para um aplicativo. Você pode eliminar a necessidade de implantar tipos desnecessários ao criar um assembly de interoperabilidade a partir do código gerenciado.

  • Com o código de origem RCW contém uma parte dos tipos em uma biblioteca de tipo grande pode eliminar a necessidade de implantar tipos desnecessários.

Como mostra a ilustração a seguir, você pode importar uma biblioteca de tipos como uma DLL gerenciada sem Personalizando o wrapper (mostrado à esquerda). Ou você pode criar um wrapper personalizado.

Informações de empacotamento em bibliotecas de tipo importado

Importador da biblioteca de tipos

Se você deve personalizar o runtime callable wrapper com instruções adicionais ou diferentes de empacotamento, você tem duas opções:

  • Editar o assembly de interoperabilidade, procurando sintaxe problemático e substituí-lo com uma sintaxe alternativa. Essa opção é melhor para pequenas alterações de empacotamento.

  • Criar um wrapper manualmente, com base em uma biblioteca existente de arquivo ou tipo de Interface Definition Language (IDL). Declarar tipos COM manualmente é uma atividade difícil que requer o conhecimento prático da Type Library Importer (Tlbimp. exe), o comportamento padrão do empacotador de interoperabilidade e com. Essa abordagem melhor é usada quando você tem toda a biblioteca de tipos especializados ou exige o código-fonte do RCW.

Consulte também

Tarefas

Como: Editar Assemblies de interoperabilidade

Como: Criar Wrappers manualmente

Conceitos

Tipos de dados COM

Personalizando COM Callable Wrappers

Outros recursos

O empacotamento de dados com a interoperabilidade COM