Regasm. exe (ferramenta de registro de Assembly)
A ferramenta de registro do Assembly lê os metadados dentro de um assembly e adiciona as entradas necessárias no registro, que permite que clientes COM para criar.NET Framework classes de forma transparente. Depois que uma classe é registrada, qualquer cliente COM pode usá-lo como se estivesse de classe uma classe COM. A classe é registrada somente uma vez, quando o assembly está instalado. Instâncias de classes dentro do assembly não podem ser criadas a partir de COM até que elas realmente são registradas.
A ferramenta de registro do Assembly é instalada automaticamente com o Visual Studio. Para iniciar a ferramenta, use o Prompt de comando Visual Studio. No prompt de comando, digite o seguinte:
regasm assemblyFile [options]
Parâmetros
Parâmetro |
Descrição |
---|---|
assemblyFile |
O assembly a ser registrado com COM. |
Opção |
Descrição |
---|---|
/codebase |
Cria uma entrada Codebase no registro. A entrada Codebase Especifica o caminho do arquivo para um assembly que não está instalado no cache global de assemblies. Você não deve especificar essa opção se você subseqüentemente instalará o assembly que você estiver registrando no cache global de assemblies. O assemblyFile argumento que você especificar com a /codebase opção deve ser um assembly de nome forte. |
/Registered |
Especifica que esta ferramenta somente fará referência às bibliotecas de tipo já foi registradas. |
/asmpath:Directory |
Especifica um diretório contendo referências do assembly. Deve ser usado com o /regfile opção. |
/nologo |
Suprime a exibição Microsoft faixa de inicialização. |
/RegFile:regFile |
Gera o arquivo. reg a especificada para o assembly que contém as entradas de registro necessárias. Especificar essa opção não altera o registro. Você não pode usar essa opção com o /u ou /tlb opções. |
/silent or /s |
Suprime a exibição de mensagens de sucesso. |
/TLB :typeLibFile |
Gera uma biblioteca de tipos do assembly especificado que contém definições dos tipos acessíveis definidos dentro do assembly. |
/unregister ou /u |
Cancela o registro pode ser criadas classes encontradas no assemblyFile. Omitir esta opção faz com que RegAsm. exe registrar as classes pode ser criadas no assembly. |
/verbose |
Especifica o modo detalhado; Exibe uma lista de qualquer assemblies para o qual precisará ser gerado quando especificada com uma biblioteca de tipos de referência a /tlb opção. |
/? or /help |
Exibe sintaxe de comando e opções para a ferramenta. |
Observação
As opções de linha de comando regasm. exe diferenciam maiúsculas de minúsculas.Você só precisará fornecer suficientes da opção para identificá-lo exclusivamente.Por exemplo, /n é equivalente a /nologo e /t:outfile.tlb é equivalente a /tlb:outfile.tlb.
Comentários
Você pode usar o /regfile opção para gerar um arquivo. reg que contém as entradas do registro em vez de fazer as alterações diretamente no registro. Você pode atualizar o registro em um computador, importando o arquivo. reg com a ferramenta do Editor do registro (Regedit. exe). Observe que o arquivo. reg não contém quaisquer atualizações de registro que podem ser feitas pelas funções de registro definido pelo usuário. Observe que o /regfile opção emite apenas a entradas do registro para classes gerenciadas. Esta opção não emitir entradas para TypeLibIDs ou InterfaceIDs.
Quando você especificar o /tlb opção, Regasm. exe gera e registra uma biblioteca de tipos descrevendo os tipos no assembly. Regasm. exe coloca as bibliotecas de tipo gerado no diretório de trabalho atual ou o diretório especificado para o arquivo de saída. Gerar uma biblioteca de tipos para um assembly que faz referência a outros assemblies pode causar várias bibliotecas de tipo a ser gerado por vez. Você pode usar a biblioteca de tipos para fornecer informações de tipo para ferramentas de desenvolvimento como Visual Studio 2005. Você não deve usar o /tlb opção se o assembly que você estiver registrando foi produzido pelo importador da biblioteca (Tlbimp. exe). Não é possível exportar uma biblioteca de tipos de um assembly que foi importado de uma biblioteca de tipos. Usando o /tlb opção tem o mesmo efeito usando o exportador da biblioteca (Tlbexp. exe) e Regasm. exe, com a exceção que Tlbexp. exe não registra a biblioteca de tipos que ele produz. Se você usar o /tlb opção para uma biblioteca de tipos de registrado, você pode usar /tlb a opção com o /unregister opção de registro cancelado a biblioteca de tipos. Usando as duas opções juntos cancelar o registro do tipo biblioteca e interface entradas, que podem limpar o registro consideravelmente.
Quando você registra um assembly para uso pelo COM, Regasm. exe adiciona entradas ao registro no computador local. Mais especificamente, ele cria chaves de registro de dependente da versão que permitem diversas versões do mesmo assembly para executar lado a lado em um computador. Na primeira vez que um assembly é registrado, uma chave de nível superior é criada para o assembly e uma subchave exclusiva é criada para a versão específica. Cada vez que você registrar uma nova versão do assembly, Regasm. exe cria uma subchave para a nova versão.
Por exemplo, considere um cenário onde você registrar o componente gerenciado, myComp.dll, a versão 1.0.0.0 para uso por COM. Posteriormente, você pode registrar myComp.dll, versão 2.0.0.0. Você determinar que todos os aplicativos de cliente COM o computador estiver usando a versão 2.0.0.0 do myComp.dll e você decidir cancelar o registro a versão 1.0.0.0 do myComponent.dll. Esse esquema de registro permite que você cancelar o registro myComp.dll versão 1.0.0.0 porque somente a subchave versão 1.0.0.0 é removida.
Depois de registrar um assembly usando Regasm. exe, você pode instalá-la a global assembly cache para que ele pode ser ativado a partir de qualquer cliente COM. Se o assembly é apenas para ser ativado por um único aplicativo, coloque-o no diretório do aplicativo.
Exemplos
O comando a seguir registra todas as classes públicas contidas no myTest.dll.
regasm myTest.dll
O comando a seguir gera o arquivo myTest.reg, que contém todo o registro necessárias entradas. Este comando não atualiza o registro.
regasm myTest.dll /regfile:myTest.reg
O comando a seguir registra todas as classes públicas contidas no myTest.dlle gera e registra a biblioteca de tipos myTest.tlb, que contém definições de todos os tipos públicos definidos em myTest.dll.
regasm myTest.dll /tlb:myTest.tlb
Consulte também
Referência
Tlbexp. exe (exportador da biblioteca)
Tlbimp. exe (importador da biblioteca)
Prompt de comando Visual Studio