Tipo biblioteca Importer (Tlbimp.exe)
O Type Library Importer converte as definições de tipo encontradas dentro de uma biblioteca de tipos COM em definições equivalentes de um assembly de tempo de execução 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 sistema autônomo, por exemplo, ILDASM.exe.
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.compilação.Revision. |
/delaysign |
Especifica que o Tlbimp.exe assinar o assembly resultante com um nome forte usando a assinatura atrasada. Você deve especificar essa opção com ambos o /keycontainer:, /keyfile:, or /publickey: opção. Para obter mais informações sobre o processo de assinatura atrasada, consulte Atraso de assinatura de um assembly. |
/help |
Exibe sintaxe de comando e opções para a ferramenta. |
/keycontainer:containername |
Sinais o assembly resultante com um nome forte usando o emparelhar de chaves pública/particular encontrado no contêiner de chave especificado por ContainerName. |
/keyfile:nome do arquivo de |
O assembly resultante com um nome forte usando oficial emparelhar de chaves pública/particular do publicador de sinais encontrado no nome de arquivo. |
/namespace:namespace de |
Especifica o namespace no qual deseja gerar 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 do arquivo de |
Especifica o nome do arquivo de saída, assembly e namespace para gravar as definições de metadados. The /out opção não terá efeito no espaço para nome do assembly se a biblioteca de tipos Especifica o atributo personalizado de Interface Definition linguagem (IDL) que controla o espaço para nome do assembly explicitamente. Se você não especificar esta opção, o Tlbimp.exe grava sistema autônomo metadados em um arquivo com o mesmo nome que a biblioteca de tipos real definida no arquivo de entrada e atribui a ele uma extensão .dll. Se o arquivo de saída for o mesmo nome sistema autônomo o arquivo de entrada, a ferramenta gera um erro para impedir a substituição a biblioteca de tipos. |
/ principal |
Produz um assembly de interoperabilidade primário para a biblioteca de tipos especificada. Informações são adicionadas ao conjunto de módulos (assembly) que indica que o publicador da biblioteca de tipos produziu o assembly. Especificando um assembly de interoperabilidade primário, você pode diferenciar assembly do publicador de outros assemblies criados a partir da biblioteca de tipos usando Tlbimp.exe. Você só deve usar o / principal opção se você for o publicador da biblioteca de tipos que você está importando com Tlbimp.exe. Observe que você deverá assinar um assembly de interoperabilidade primário com um nome forte. Para mais informações, consulte Assemblies de Interoperabilidade Primários. |
/publickey:nome do arquivo de |
Especifica o arquivo que contém a chave pública para assinar o assembly resultante. Se você especificar o /keyfile: or /keycontainer: opção em vez de /publickey:, Tlbimp.exe gera a chave pública do emparelhar de chaves pública/particular fornecido com /keyfile: or /keycontainer:. The /publickey: opção suporta teste chave e atraso de assinatura de cenários. O arquivo está no formato gerado pelo sn.exe. Para obter mais informações, consulte o -p opção de sn.exe em nome forte ferramenta (sn.exe). |
/Reference:nome do arquivo de |
Especifica o arquivo do assembly a ser usado para resolver referências aos tipos definidos fora a biblioteca de tipos do corrente. Se você não especificar o /Reference opção, Tlbimp.exe recursivamente importará automaticamente qualquer biblioteca de tipos externos 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 que ele importa outras bibliotecas de tipo. |
/ silencioso |
Suprime a exibição das mensagens de êxito. |
/strictref |
Não importa uma biblioteca de tipos se a ferramenta não puder resolver todas as referências dentro do assembly corrente, os assemblies especificados com o /Reference opção ou registrados módulos de interoperabilidade primários (PIAs). |
/strictref:nopia |
Same sistema autônomo /strictref, mas ignora PI sistema autônomo. |
/sysarray |
Especifica que a ferramenta para importar um estilo COM SafeArray sistema autônomo um gerenciado Classe sistema.array tipo. |
/tlbreference:nome do arquivo de |
Especifica o arquivo de biblioteca de tipo a ser usado para resolver referências de bibliotecas de tipo sem consultar o registro. Observe que essa opção não será carregado alguns formatos de biblioteca de tipo mais antigos. No entanto, ainda é possível carregar formatos de biblioteca tipo antigos implicitamente através do registro ou a pasta corrente. |
Transform:transformName |
Transforma metadados conforme especificado pelo transformName parâmetro. Especificar dispret for the transformName parâmetro para 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 verificações de segurança do .NET estrutura. 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ê esteja ciente dos riscos de expor esse tipo de código. |
/verbose |
Especifica o modo detalhado; exibe informações adicionais sobre a biblioteca de tipos importada. |
/? |
Exibe sintaxe de comando e opções para a ferramenta. |
Observação: |
---|
As opções de linha de comando Tlbimp.exe fazem distinção entre maiúsculas e minúsculas e podem ser fornecidas em qualquer ordem. Você precisará especificar somente suficiente a opção para identificá-lo exclusivamente. Portanto, /n is equivalent to /nologo and /ou:outfile.dll is equivalent to /out:outfile.dll. |
Comentários
Tlbimp.exe realiza conversões em uma biblioteca de tipo inteiro ao mesmo time. Não é possível usar a ferramenta para gerar informações de tipo para um subconjunto dos tipos definidos em uma biblioteca de tipo único.
Geralmente é útil ou necessárias para poder atribuir nomes fortes para módulos (assemblies). Portanto, Tlbimp.exe inclui opções para fornecer as informações necessárias para gerar assemblies de nomeados forte. O /keyfile: and /keycontainer: Opções de assinam assemblies com nomes fortes. Portanto, é lógico para fornecer apenas uma das seguintes opções ao mesmo time.
Uma ID de recurso, opcionalmente, pode ser anexada a um arquivo de biblioteca de tipo ao importar uma biblioteca de tipos de um módulo que contém várias bibliotecas de tipo. Tlbimp.exe é capaz de localizar esse arquivo apenas se ele estiver no diretório corrente ou se você especificar o caminho completo. Consulte o exemplo neste tópico.
Exemplos
O comando a seguir gera um sembly sistema autônomo com o mesmo nome sistema autônomo a biblioteca de tipos encontrado no myTest.tlb e com a extensão .dll.
tlbimp myTest.tlb
O comando a seguir gera um assembly com o nome de 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 corrente.
tlbimp MyModule.dll\1
O comando a seguir gera um assembly com o nome de myTestLib.dll para a biblioteca de tipos TestLib.dll. The /Transform:dispret opção transforma qualquer [out, retval] parâmetros de métodos em dispinterfaces na biblioteca de tipos em valores de retorno no gerenciado biblioteca.
tlbimp TestLib.dll /transform:dispret /out:myTestLib.dll
O tipo de biblioteca TestLib.dll, no exemplo anterior, inclui um método dispinterface de chamada SomeMethod que retorna void e [out, retval] tem parâmetros. O código a seguir é a assinatura do método de biblioteca de tipo de entrada para SomeMethod em TestLib.dll.
void SomeMethod([out, retval] VARIANT_BOOL*);
Especificando o /Transform:dispret opção faz com que o Tlbimp.exe transformar o [out, retval] parâmetro do SomeMethod em um bool o valor retornado. Esta é a assinatura do método que produz Tlbimp.exe para SomeMethod no gerenciado biblioteca myTestLib.dll Quando o /Transform:dispret opção é especificada.
bool SomeMethod();
Se você usar o Tlbimp.exe para gerar uma biblioteca gerenciada para TestLib.dll sem especificar o /Transform:dispret, a ferramenta produz a seguinte assinatura de método de SomeMethod na biblioteca gerenciada myTestLib.dll.
void SomeMethod(out bool x);
Consulte também
Conceitos
Importação uma biblioteca de tipos como um assembly
Atributos parImportação as bibliotecas de tipo em assemblies de interoperabilidade
Referência
Tipo biblioteca Exporter (Tlbexp.exe)
Desassemblador do MSIL (ILDASM.exe)
Ferramenta Strong Name (Sn.exe)