Como: Criar Assemblies de interoperabilidade primários manualmente
Uma abordagem menos freqüentemente usada para produzir uma biblioteca de tipos envolve a criação de um assembly de interoperabilidade primário manualmente no código-fonte usando uma linguagem que seja compatível com a especificação de CLS (Common Language), como, por exemplo, C#. Essa abordagem é útil quando uma biblioteca de tipos não está disponível.
Para gerar um assembly de interoperabilidade primária no código-fonte
Crie um assembly de interoperabilidade no código-fonte. Para obter instruções, consulte criar um Wrapper manualmente. Observe que você deve incluir todos os tipos de COM da biblioteca de tipo original quando você cria um assembly de interoperabilidade primário manualmente.
No nível do assembly, aplica os seguintes atributos:
AssemblyKeyFileAttributeou AssemblyKeyNameAttribute, para especificar o nome do arquivo ou o recipiente que contém o par de chaves para usar ao assinar o assembly com um nome forte.
GuidAttribute, para especificar o identificador de biblioteca (ID da biblioteca) da biblioteca de tipo de destino.
PrimaryInteropAssemblyAttribute, para identificar o conjunto como um assembly de interoperabilidade primária.
Observação
Você também pode atrasar a assinatura de um assembly quando estiver compilando.Para obter mais informações, consulte Delay Signing an Assembly.
O exemplo de código a seguir se aplica a AssemblyKeyFileAttribute com um arquivo de chave chamado CompanyA.snk e especifica que este assembly é um assembly de interoperabilidade primária que suportam versões de bibliotecas de tipo 4.2 e 5.2. Como mostra o exemplo, você pode dispor mais de uma versão de uma biblioteca de tipo aplicando atributos adicionais de nível de assembly.
[assembly:AssemblyKeyFile(@"..\..\CompanyA.snk")] [assembly:Guid("97d25db0-0363-1cf-abc4-02608 c9e7553"] [assembly:PrimaryInteropAssembly(4, 2)] [assembly:PrimaryInteropAssembly(5, 2)]
Consulte também
Tarefas
Como: Gerar Assemblies de interoperabilidade primários usando Tlbimp. exe
Como: Empacotar várias versões das bibliotecas de tipo