Como instalar um assembly no cache global de assemblies .NET Framework

Traduções deste artigo Traduções deste artigo
ID do artigo: 910355 - Exibir os produtos aos quais esse artigo se aplica.
Para uma versão deste artigo do Microsoft Visual Basic. NET, consulte 315682.
Para obter uma versão Microsoft Visual C++ 2005 e Visual C++ .NET deste artigo, consulte 815807.
Para obter uma Microsoft Visual translation from VPE for Csharp .NET versão deste artigo, consulte 815808.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo descreve como instalar um arquivo .dll de assembly no cache de assembly global Microsoft .NET Framework. Para fazer isso, você pode usar a ferramenta Microsoft .NET Framework Software Development Kit (SDK) global assembly cache. Um assembly deve ter um nome forte para ser instalado no cache global de assemblies. Este artigo descreve como criar um assembly com um nome forte usando o Microsoft Visual Studio 2005. Além disso, este artigo descreve como verificar se o assembly está instalado no cache global de assemblies. Para realizar essa tarefa, você deve ter direitos de administrador para o computador em que o assembly compartilhado está instalado. Além disso, você deve instalar o .NET Framework SDK.

INTRODUÇÃO

Este artigo passo a passo descreve como criar um assembly com um nome forte usando o Visual Studio 2005. Além disso, este artigo descreve como instalar um arquivo .dll de assembly no cache global de assemblies .NET Framework. Para fazer isso, você pode usar o SDK do .NET Framework ferramenta global assembly cache. Você também pode usar a ferramenta global assembly cache para verificar se o assembly é instalado no cache global de assemblies.

Mais Informações

O cache global de assemblies

O cache de assembly global .NET Framework é um cache de código. Cache de assembly global é automaticamente instalado em cada computador que tem o .NET Framework common language runtime instalado. Qualquer aplicativo que está instalado no computador pode acessar o cache global de assemblies. O cache global de assemblies armazena assemblies especificamente designados para ser compartilhados por vários aplicativos no computador. Assemblies de componentes são normalmente armazenados na pasta C:\WINNT\Assembly.

Observação Instale um assembly no cache global de assemblies somente quando você deve compartilhar o assembly. A menos que um assembly de compartilhamento seja explicitamente necessário, é recomendável que você mantenha as dependências de assembly particular e que você localizar o assembly no diretório de aplicativo. Além disso, não é necessário instalar um assembly no cache global de assemblies para disponibilizar o assembly COM (Microsoft Component Object Model) interoperabilidade ou código não gerenciado.

Um assembly

Um assembly é uma parte fundamental da programação com o .NET Framework. Um assembly é reutilizável, autodescritivos bloco de construção de um aplicativo de tempo de execução de linguagem comuns do .NET Framework.

Um assembly contém um ou mais componentes de código que executa o common language runtime. Todos os tipos e todos os recursos no mesmo assembly formam uma versão individual da unidade. O manifesto do assembly descreve as dependências de versão que você especificar para todos os assemblies dependentes. Usando um assembly, você pode especificar regras de versão entre componentes de software diferente e você pode ter essas regras aplicadas em tempo de execução. Um assembly oferece suporte à execução lado a lado. Isso permite que várias versões a serem executadas ao mesmo tempo.

Assinatura de nome forte

Um assembly deve ter um nome forte para ser instalado no cache global de assemblies. Um nome forte é uma identidade globalmente exclusiva que não pode ser falsificada por outra pessoa. Usando um nome forte, você impedir que componentes que têm o mesmo nome entrem em conflito uns com os outros ou sejam usados incorretamente por um aplicativo de chamada. Assinatura assembly associa um nome de alta segurança junto com um assembly. Assinatura assembly também é chamado assinatura de nome forte. Um nome forte consiste as seguintes informações:
  • O nome de texto simples do assembly
  • O número de versão do assembly do
  • As informações de cultura sobre o assembly, se essa informação é fornecida
  • Uma chave pública e um par de chaves particular
Essas informações são armazenadas em um arquivo de chave. O arquivo de chave é um arquivo Personal Information Exchange (.pfx) ou um certificado do armazenamento de certificado Microsoft Windows do usuário atual.

Você pode assinar um assembly usando as opções na guia Signing do Project Designer no Visual Studio 2005. No Visual Studio 2005, o arquivo chave deve ser armazenado na pasta de projeto no computador local. O Visual Studio 2005 suporta somente os formatos de arquivo seguinte:
  • Arquivos PFX (.pfx) pessoais
  • Arquivos de chave (.snk) de nome forte

Requisitos

Você deve atender aos seguintes requisitos antes de instalar um assembly no cache de assembly global:
  • Você deve ter direitos de administrador para o computador em que o assembly compartilhado está instalado.
  • Você deve instalar o SDK do .NET Framework.
Este artigo pressupõe que você esteja familiarizado com os seguintes tópicos:
  • Geral familiaridade com assemblies compartilhados no Microsoft .NET
  • Geral familiaridade com o uso de ferramentas em um prompt de comando

Como instalar um assembly no cache global de assemblies

Esse método é baseado em como criar um assembly usando o Visual Studio 2005. Para criar um assembly que pode ser compartilhado por vários aplicativos, o assembly compartilhado deve ter um nome forte. Além disso, o assembly compartilhado deve ser implantado no cache global de assemblies.

Para criar um pequeno conjunto Microsoft Visual translation from VPE for Csharp que tem um nome forte e instalar o arquivo .dll compilado no cache de assembly global, execute estas etapas:
  1. Crie um novo projeto de Visual translation from VPE for Csharp Class Library chamado GACDemo. Para fazer isso, execute as seguintes etapas:
    1. Inicie o Visual Studio 2005.
    2. No menu arquivo , clique em New Project .
    3. Na lista Templates , clique em Class Library .
    4. Na caixa nome , digite GACDemo e, em seguida, clique em OK .
    5. Para salvar o projeto, pressione CTRL + SHIFT + S.
    6. Na caixa Location , digite C:\DemoProjects .
    7. Clique para desmarcar a caixa de seleção criar diretório para solução e, em seguida, clique em Salvar .
  2. Gerar um nome forte e, em seguida, associar o arquivo chave de nome de alta segurança junto com o assembly. Para fazer isso, execute as seguintes etapas:
    1. No menu Project , clique em Propriedades GACDemo .
    2. Na guia autenticação , clique para selecionar a caixa de seleção Sign the assembly .
    3. Em Escolher um arquivo de chave de nome forte , clique em <new>.
    4. Na caixa de diálogo Create Strong Name Key , clique para selecionar a proteger meu arquivo de chave com uma senha Marque caixa.
    5. Na caixa Key file name , digite GACDemo .
    6. Na caixa Digite a senha , digite a senha que você deseja usar.
    7. Na caixa Confirmar senha , digite a mesma senha e, em seguida, clique em OK .

      Observação Recomendamos que você use sempre uma senha quando você cria um arquivo de chave. Um novo arquivo chave que é protegido por uma senha sempre é criado no formato de arquivo pfx.
    8. Para compilar o projeto, pressione CTRL + SHIFT + B.

      Observação Nenhum código adicional é necessário para instalar um arquivo .dll no cache global de assemblies.
  3. Instale o arquivo .dll que você criou na etapa 2 no cache de assembly global usando a ferramenta global assembly cache. Para fazer isso, execute as seguintes etapas:
    1. Clique em Iniciar , clique em Executar , digite cmd e, em seguida, clique em OK .
    2. Para alterar a pasta de trabalho atual para o diretório onde o SDK do .NET Framework está instalado, use um dos seguintes comandos:
      • Se a versão .NET Framework 2.0 SDK está instalado, digite o seguinte comando e pressione ENTER:
        cd "%ProgramFiles%\Microsoft Visual Studio 8\SDK\v2.0\Bin"
      • Se o .NET Framework versão 1.1 SDK está instalado, digite o seguinte comando e pressione ENTER:
        CD "% ProgramFiles%\Microsoft.NET\SDK\v1.1\Bin"
    3. Em um prompt de comando, digite o seguinte comando e pressione ENTER:
      gacutil - me "C:\DemoProjects\GACDemo\bin\Release\GACDemo.dll"

Como verificar se o assembly está instalado no cache global de assemblies

Você pode usar a ferramenta global assembly cache para verificar se o assembly é instalado no cache global de assemblies. Para fazer isso, execute as seguintes etapas:
  1. Clique em Iniciar , clique em Executar , digite cmd e, em seguida, clique em OK .
  2. Para alterar a pasta de trabalho atual para o diretório onde o SDK do .NET Framework está instalado, use um dos seguintes comandos:
    • Se o SDK do .NET Framework 2.0 estiver instalado, digite o seguinte comando e pressione ENTER:
      cd "%ProgramFiles%\Microsoft Visual Studio 8\SDK\v2.0\\Bin"
    • Se o SDK do .NET Framework 1.1 estiver instalado, digite o seguinte comando e pressione ENTER:
      CD "% ProgramFiles%\Microsoft.NET\SDK\v1.1\Bin"
  3. Para exibir as informações de instalação sobre o assembly GACDemo, use a ferramenta global assembly cache. Para fazer isso, digite o seguinte comando em um prompt de comando e pressione ENTER:
    GACDemo Gacutil -l
    Observação As informações de instalação sobre o GACDemo assembly é exibida.

Referências

Para obter mais informações sobre como criar um assembly que tiver um nome forte no SDK do .NET Framework, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
302340Como criar um assembly com um nome forte no .NET Framework SDK
Para obter mais informações sobre o cache global de assemblies, visite os seguintes sites da Microsoft Developer Network (MSDN):
Visão geral sobre assemblies
http://msdn2.microsoft.com/en-us/library/k3677y81(vs.71).aspx

Criação de módulos (assemblies)
http://msdn2.microsoft.com/en-us/library/b0b8dk77(VS.80).aspx

Programando com assemblies
http://msdn2.microsoft.com/en-us/library/8wxf689z(VS.80).aspx

Trabalhando com assemblies e o cache global de assemblies
http://msdn2.microsoft.com/en-us/library/6axd4fx6(VS.80).aspx

Como instalar um assembly no cache global de assemblies
http://msdn2.microsoft.com/en-us/library/dkkx7f79(VS.80).aspx

Cache de assembly global
http://msdn2.microsoft.com/en-us/library/yf1d93sz(vs.71).aspx

Ferramenta global assembly cache (Gacutil.exe)
http://msdn2.microsoft.com/en-us/library/ex0ss12c(vs.71).aspx

Propriedades

ID do artigo: 910355 - Última revisão: quinta-feira, 22 de novembro de 2007 - Revisão: 1.9
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 2.0 Software Development Kit
  • Microsoft Visual Studio 2005 Team System Architect Edition
  • Microsoft Visual Studio 2005 Team System Developer Edition
  • Microsoft Visual Studio 2005 Team System Test Edition
  • Microsoft Visual Studio 2005 Team System Team Foundation:
  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio 2005 Professional Edition
  • Microsoft Visual Studio 2005 Express Edition
  • Microsoft Visual Basic 2005
  • Microsoft Visual C# 2005 Express Edition
Palavras-chave: 
kbmt kbstepbystep kbsample kbado kbvs2005applies kbhowtomaster kbhowto kbcodesign kbcommandline kbnamespace KB910355 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 910355

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com