PROBLEMA: PIA É não encontrada quando você referenciar uma biblioteca de tipo de Office no Visual Studio .NET

Traduções deste artigo Traduções deste artigo
ID do artigo: 823996 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sintomas

Quando você desenvolver uma solução para um aplicativo do Microsoft Office 2003 usando o Microsoft Visual Studio .NET 2003 e referência uma biblioteca de objeto do Office nessa solução, você notar que o Visual Studio .NET 2003 cria um assembly de interoperabilidade (IA) para a biblioteca em vez de fazer referência a assembly de interoperabilidade primária (PIA).

Além disso, há outra sintoma desse mesmo problema. Quando você tenta criar um novo projeto do Office usando o Microsoft Visual Studio Tools para o Microsoft Office System 2003, você receber a seguinte mensagem de erro:

O assembly de interoperabilidade primária necessário para este projeto não está instalado no cache global de assemblies. Microsoft Office 2003 inclui assemblies de interoperabilidade primária para cada aplicativo como uma opção de instalação. Para obter detalhes sobre a instalação do Office assemblies de interoperabilidade primária, consulte o tópico da Ajuda, "Instalando Office Assemblies de interoperabilidade primários."

Causa

Esse problema pode ocorrer um dos seguintes motivos:
  • O PIA da biblioteca de objeto do Office que você seleciona não está instalado no GAC (cache de assembly global).

    Para instalar o PIA no GAC, você deve ter o PIA do aplicativo do Office ou o PIA para o componente Office marcado como Executar de Meu computador no programa de instalação do Microsoft Office 2003. Na instalação do Office, cada PIA do Office será listada sob o aplicativo correspondente para o PIA como um recurso de Suporte À programação .NET .
  • O PIA é instalado no GAC, mas não há uma entrada do Registro.

    Quando você seleciona uma referência a uma biblioteca de objeto do Office no ambiente de desenvolvimento, o Visual Studio .NET usa o registro para localizar o PIA que corresponde à biblioteca de objetos do que você seleciona. Essa entrada do Registro pode ser removida se a biblioteca de objetos do aplicativo Office estiver registrada por um programa recém-instalado ou às vezes, se o executável para essa biblioteca de objetos de aplicativo é executado com a opção regserver .

Resolução

Para resolver esse problema, a Microsoft recomenda que você execute a instalação de Adicionar ou remover programas no painel de controle:
  • Se o PIA não aparecer no GAC, execute o programa de instalação do Office e marque o PIA para o aplicativo como Executar de Meu computador . Cada PIA do Office aparece como um recurso de Suporte À programação .NET para o aplicativo correspondente do Office ou para o componente correspondente do Office.
  • Se o PIA for exibida no GAC, execute o programa de instalação do Office e, em seguida, selecione a opção para reparar sua instalação do Office. Como alternativa, se o PIA for exibida no GAC, você pode executar o utilitário regasm para restaurar as entradas do Registro ausente.
  1. No painel de controle, clique duas vezes em Ferramentas administrativas e, em seguida, selecione Microsoft .NET Framework 1.1 Configuration .
  2. Selecione Armazenamento em cache e clique em assemblies no menu Exibir .
  3. Clique com o botão direito assembly na lista de assemblies e clique em Propriedades.

    Na caixa de diálogo Propriedades de assembly , observe o Nome do assembly , a versão e o token de chave pública .

    Por exemplo, se você selecionar o PIA do Microsoft Word, observe os seguintes valores de propriedade:

    Nome do assembly: Microsoft.Office.Interop.Word
    Versão: 11.0.0.0
    Símbolo de chave pública: 71e9bce111e9429c
  4. Inicie um prompt de comando Visual Studio. NET.
  5. No prompt de comando, altere para o diretório onde está localizado o assembly.

    O caminho é da seguinte forma:

    <assemblyname><version> %windir%\assembly\GAC\ <nome_do_assembly> \ <versão> __ < token de chave pública >
    Por exemplo, se você usar os valores de propriedade para o PIA do Word mencionadas anteriormente, você deve alterar para o diretório onde está localizado o PIA do Word usando o seguinte comando:

    CD %windir%\assembly\GAC\Microsoft.Office.Interop.Word\11.0.0.0__71e9bce111e9429c
  6. Execute o utilitário regasm para restaurar as entradas de registro de PIA do Word:

    regasm Microsoft.Office.Interop.Word.dll

Propriedades

ID do artigo: 823996 - Última revisão: sexta-feira, 3 de fevereiro de 2006 - Revisão: 1.5
A informação contida neste artigo aplica-se a:
  • Microsoft Office Professional Edition 2003
  • Microsoft Office Basic Edition 2003
  • Microsoft Office Small Business Edition 2003
  • Microsoft Office Standard Edition 2003
  • Microsoft Office Students and Teachers Edition 2003
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio Tools for the Microsoft Office System version 2003
Palavras-chave: 
kbmt kbprb KB823996 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: 823996

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