Share via


Tlbimp. exe (importador da biblioteca)

O importador da biblioteca converte as definições de tipo encontradas dentro de uma biblioteca de tipos COM em definições equivalentes em um assembly de tempo de execução de linguagem comum. A saída de Tlbimp. exe é um arquivo binário (um assembly) que contém metadados de tempo de execução para os tipos definidos dentro da biblioteca de tipo original. Você pode examinar esse arquivo com ferramentas tais como Ildasm. exe.

O importador da biblioteca é automaticamente instalado com o Visual Studio. Para iniciar a ferramenta, use o Prompt de comando Visual Studio. No prompt de comando, digite o seguinte:

tlbimp tlbFile [options]

Parâmetros

Argumento

Descrição

tlbFile

O nome de qualquer arquivo que contém uma biblioteca de tipos COM.

Opção

Descrição

/asmversion:versionNumber

Especifica o número de versão do assembly para produzir. Especificar versionNumber no formato major.minor.build.revision.

/DelaySign

Especifica a Tlbimp. exe assinar o conjunto resultante com um nome forte usando a assinatura atrasada. Você deve especificar essa opção com um a /keycontainer:, /keyfile:, ou /publickey: opção. Para obter mais informações sobre o processo de assinatura atrasada, consulte Delay Signing an Assembly.

/help

Exibe sintaxe de comando e opções para a ferramenta.

/keycontainer:containername

Assina o assembly resultante com um nome forte usando o par de chaves pública/particular encontrado no contêiner de chave especificado por containername.

/keyfile:nome de arquivo

Assina o assembly resultante com um nome forte usando oficial pública/privada par de chaves do publisher encontrados em nome de arquivo.

/namespace:namespace

Especifica o namespace produzir o assembly.

/noclassmembers

Impede que o Tlbimp. exe adicionando membros a classes. Isso evita um potencial TypeLoadException.

/nologo

Suprime a exibição Microsoft faixa de inicialização.

/out:nome de arquivo

Especifica o nome do arquivo de saída, assembly e namespace para gravar as definições de metadados. O /out opção não terá efeito no espaço de nome do assembly se a biblioteca de tipos Especifica o atributo personalizado Interface Definition Language (IDL) que controla explicitamente o espaço de nome do assembly. Se você não especificar esta opção, Tlbimp. exe grava os metadados em um arquivo com o mesmo nome que a biblioteca de tipo real definida no arquivo de entrada e atribui a ele uma extensão. dll. Se o arquivo de saída é o mesmo nome que o arquivo de entrada, a ferramenta gera um erro para impedir a substituição de biblioteca de tipos.

principal/principal

Produz um assembly de interoperabilidade primária para a biblioteca de tipo especificado. Informações são adicionadas ao assembly indicando que o Editor de biblioteca de tipos produzido o assembly. Especificando um assembly de interoperabilidade primária, você pode diferenciar o assembly do publisher a partir de outros assemblies são criadas a partir da biblioteca de tipos usando Tlbimp. exe. Você só deve usar o /principal opção se você for o Editor de biblioteca de tipos que você está importando com Tlbimp. exe. Observe que você deve assinar um assembly de interoperabilidade primário com um nome forte. Para mais informações, consulte Assemblies de Interoperabilidade Primários.

/publickey:nome de arquivo

Especifica o arquivo que contém a chave pública para usar para assinar o conjunto resultante. Se você especificar o /keyfile: ou /keycontainer: a opção em vez de /publickey:, Tlbimp. exe gera a chave pública do par de chaves pública/particular fornecido com o /keyfile: ou /keycontainer:. O /publickey: oferece suporte a opção chave e atraso de assinatura de cenários de teste. O arquivo está no formato gerado pelo sn. exe. Para obter mais informações, consulte o -p opção de sn. exe em Strong Name Tool (sn. exe).

/Reference:nome de arquivo

Especifica o arquivo do assembly usar para resolver referências aos tipos definidos fora da biblioteca de tipos do atual. Se você não especificar o /reference opção, Tlbimp. exe automaticamente recursivamente importa qualquer biblioteca de tipo externo que a biblioteca de tipo, que está sendo importado referências. Se você especificar o /reference opção, a ferramenta tenta resolver tipos externos em assemblies referenciados antes ele importa outras bibliotecas de tipo.

/ silencioso

Suprime a exibição de mensagens de sucesso.

/strictref

Não importar uma biblioteca de tipos se a ferramenta não é possível resolver todas as referências dentro do assembly atual, os assemblies especificados com o /reference opção ou registrados assemblies de interoperabilidade primários (PIAs).

/strictref:nopia

Mesmo que /strictref, mas ignora PIAs.

/sysarray

Especifica a ferramenta para importar um estilo COM SafeArray como um gerenciado Enquanto a classe tipo.

/tlbreference:nome de arquivo

Especifica o arquivo de biblioteca de tipo para usar para resolver referências de biblioteca de tipo sem consultar o registro.

Observe que essa opção não carregará alguns formatos antigos de biblioteca de tipo. No entanto, ainda é possível carregar os formatos antigos de biblioteca de tipo implicitamente por meio do registro ou no diretório atual.

/ Transformar:transformName

Transforma metadados conforme especificado pelo transformName parâmetro.

Especificar dispret para o transformName parâmetro transformação [out, retval] parâmetros de métodos em despacho somente interfaces (dispinterfaces) em valores de retorno.

Para obter mais informações sobre essa opção, consulte os exemplos neste tópico.

/unsafe

Produz interfaces sem.NET Framework verificações de segurança. Chamar um método que é exposto dessa maneira pode representar um risco de segurança. Você não deve usar essa opção, a menos que você está ciente dos riscos de expor esse código.

/verbose

Especifica o modo detalhado; Exibe informações adicionais sobre a biblioteca de tipo importado.

/ VariantBoolFieldToBool

Converte VARIANT_BOOL campos de estruturas para Boolean.

/?

Exibe sintaxe de comando e opções para a ferramenta.

Observação

As opções de linha de comando Tlbimp. exe diferenciam maiúsculas de minúsculas e podem ser fornecidas em qualquer ordem.Você só precisará especificar o suficiente da opção para identificá-lo exclusivamente.Portanto, /n é equivalente a /nologo e /ou:outfile.dll é equivalente a /out:outfile.dll.

Comentários

Tlbimp. exe executa conversões em uma biblioteca de tipo inteiro de uma só vez. É possível usar a ferramenta para gerar informações de tipo para um subconjunto dos tipos definidos dentro de uma biblioteca de tipo único.

Ela costuma ser útil ou necessários para poder atribuir nomes fortes a assemblies. Portanto, o Tlbimp. exe inclui opções para fornecer as informações necessárias para gerar assemblies de nomeados forte. Tanto o /keyfile: e /keycontainer: Opções de assinam assemblies com nomes fortes. Portanto, é lógico para fornecer apenas uma das seguintes opções ao mesmo tempo.

A identificação do recurso, opcionalmente, pode ser anexada a um arquivo de biblioteca de tipo ao importar uma biblioteca de tipos a partir de um módulo contendo várias bibliotecas de tipo. Tlbimp. exe é capaz de localizar esse arquivo apenas se ele estiver no diretório atual ou se você especificar o caminho completo. Consulte o exemplo neste tópico.

Exemplos

O comando a seguir gera um assembly com o mesmo nome, como a biblioteca de tipos encontrados em myTest.tlb e com a extensão. dll.

tlbimp myTest.tlb 

O comando a seguir gera um assembly com o nome myTest.dll.

tlbimp  myTest.tlb  /out:myTest.dll

O comando a seguir gera um assembly com o mesmo nome que a biblioteca de tipos especificada por MyModule.dll\1 e com a extensão. dll. MyModule.dll\1 deve estar localizado no diretório atual.

tlbimp MyModule.dll\1

O comando a seguir gera um assembly com o nome myTestLib.dll para a biblioteca de tipos TestLib.dll. O /transform:dispret opção transforma qualquer [out, retval] parâmetros de métodos em dispinterfaces na biblioteca de tipos em valores de retorno na biblioteca gerenciada.

tlbimp TestLib.dll /transform:dispret /out:myTestLib.dll

A biblioteca de tipos TestLib.dll, no exemplo anterior, inclui um método dispinterface chamado SomeMethod que retorna void e possui um [out, retval] parâmetro. O código a seguir é a assinatura de método de biblioteca de tipo de entrada para SomeMethod na TestLib.dll.

void SomeMethod([out, retval] VARIANT_BOOL*);

Especificando a /transform:dispret opção faz com que o Tlbimp. exe transformar o [out, retval] parâmetro do SomeMethod em um bool Retornar valor. A seguir está a assinatura do método Tlbimp. exe produz para SomeMethod na biblioteca gerenciada myTestLib.dll quando o /transform:dispret opção é especificada.

bool SomeMethod();

Se você usar Tlbimp. exe para produzir uma biblioteca gerenciada para TestLib.dll sem especificar o /transform:dispret, a ferramenta produz a seguinte assinatura de método para SomeMethod na biblioteca gerenciada myTestLib.dll.

void SomeMethod(out bool x);

Consulte também

Referência

Tlbexp. exe (exportador da biblioteca)

Ildasm. exe (desmontador MSIL)

Sn. exe (ferramenta de nome forte)

Prompt de comando Visual Studio

Conceitos

A importação de uma biblioteca de tipos como um Assembly.

Assemblies de nomes fortes

Atributos de importação de bibliotecas de tipos para Assemblies de interoperabilidade

Outros recursos

Ferramentas.NET Framework

Biblioteca de tipos ao resumo de conversão de Assembly

Histórico de alterações

Date

History

Motivo

Maio de 2010

Adicionados de switch ausente.

Correção de bug de conteúdo.