Solucionando problemas de erros em soluções do Office

Você pode encontrar problemas quando você executa as seguintes tarefas quando você desenvolver soluções do Office no Visual Studio:

  • Criando, atualização, e abrir projetos

  • Usando o designer

  • Escrevendo código

  • Projetos imobiliários

  • Projetos de depuração

Criando, atualização, e abrir projetos

Você pode encontrar os seguintes erros quando você cria ou abre um projeto do Office.

h8c469ey.collapse_all(pt-br,VS.110).gifO não pode ser criada

Ocorreu um erro quando você tentou criar ou abrir um projeto do Office, mas o Visual Studio não tem informações suficientes para determinar a causa.Tente feche seu projeto, saia do Visual Studio, e iniciá-lo novamente.

Se você está tentando criar um projeto da nível de usuário, é possível que outro documento com o mesmo nome que o documento no novo projeto já está aberto no excel ou Word.Certifique-se de que todas as outras instâncias do excel ou Word são fechadas.

h8c469ey.collapse_all(pt-br,VS.110).gifAs propriedades do controle são perdidas quando você cria O novo baseado em um documento de O existente

Se você criar um novo projeto do Office baseado em um documento de um projeto existente, as propriedades para os controles que estão no documento não são copiadas para o novo projeto.Você deve limpar as propriedades para todos os controles preexistente manualmente.Como alternativa, você pode preservar as propriedades do controle criando uma cópia do projeto existente em vez de criar um novo projeto, ou carregar o projeto existente na nova solução () no designer e copiar e colar os controles de documento existente para o novo documento.

h8c469ey.collapse_all(pt-br,VS.110).gifErros quando você criar uma pasta de trabalho de O Excel com base em uma pasta de trabalho existente

Se você criar um novo projeto de pasta de trabalho do Excel com base em uma pasta de trabalho existente, você poderá ver uma combinação dos seguintes erros.

O excel: “Aviso de privacidade: Este documento contém macros, controles ActiveX, de expansão XML informações do bloco, ou componentes da Web.Elas podem incluir as informações pessoais que não podem ser removidos pelo inspector de documento.”

Visual Studio: “Designer não está carregado corretamente.”

Esses erros podem ocorre se tentativa para criar um projeto baseado em uma pasta de trabalho que tem suas informações pessoais removidas usando inspector do documento.Para evitar esse erro, execute as seguintes etapas antes de criar o projeto.

  1. Abra a pasta de trabalho do excel.

  2. O excel, abra o centro de confiança.

  3. Na guia de Opções de Privacidade desmarque a caixa de seleção de Remover informações pessoais das propriedades do arquivo ao salvar .

  4. Salve a pasta de trabalho e feche o excel.

h8c469ey.collapse_all(pt-br,VS.110).gifNão pode abrir o Project após a migração

Depois que uma solução do Office é migrada a Microsoft Office 2010, o projeto não pode ser aberto em um computador de desenvolvimento com apenas 2007 Microsoft Office system instalado.Você pode ver os seguintes erros.

“Um ou vários projetos na solução não foram carregados corretamente.Por favor consulte a janela de saída para detalhes.”

“Não pode criar o projeto como o aplicativo associado com esse tipo de projeto não está instalado no computador.Você deve instalar o aplicativo do Microsoft Office que está associado com esse tipo de projeto.”

Para resolver esse problema, edite o arquivo .csproj ou .vbproj.Para um projeto de Word, substitua HostPackage=” {763FDC83-64E5-4651-AC9B-28C o 4 de fevereiro 985A1} “com o HostPackage= 6CE98B71-D55A-4305-87A8-0D6E368D9600” {}”.Para um projeto do excel, substitua HostPackage=” {} “B284B16A-C42C-4438-BDCD-B72F4AC43CFB com o HostPackage= 825100CF-0BA7-47EA-A084-DCF3308DAF74” {}”.Para um projeto do Outlook, substitua HostPackage=” {} “D2B20FF5-A6E5-47E1-90E8-463C6860CB05 com o HostPackage= 20A848B8-E01F-4801-962E-25DB0FF57389” {}”.

Como alternativa, certifique-se de que os projetos migrados estão abertos somente em computadores de desenvolvimento com o Microsoft Office 2010 já instalado.

h8c469ey.collapse_all(pt-br,VS.110).gifErros no Office atualizado 2003 projetos de um documento nível que contêm controles de formulários do Windows

Se você atualizar um projeto da nível do Microsoft Office 2003, e o documento contém controles de formulários do Windows, o projeto atualizado pode ter compilar ou erros de tempo de execução.Para evitar esse problema, instalar as ferramentas do Visual Studio 2005 para o tempo de execução do Office segundo no computador de desenvolvimento antes que você atualize o projeto.Esta versão do runtime está disponível como um pacote redistribuível do Microsoft Download Center em Microsoft Visual Studio 2005 ferramentas para o tempo de execução do Office (dependendo SE 2005 de VSTO (x)).

Depois que você concluir atualizar o projeto, você poderá desinstalar as ferramentas do Visual Studio 2005 para o tempo de execução do Office dependendo do computador de desenvolvimento se não está sendo usado por outras soluções do Office.

Usando o designer

Você pode encontrar os seguintes erros quando você trabalha com o documento, a pasta de trabalho, ou o designer da planilha em projetos de um documento nível.

h8c469ey.collapse_all(pt-br,VS.110).gifDesigner não são carregados corretamente

Visual Studio não pode abrir o designer nos seguintes casos:

  • O excel Word ou já está aberto e está exibindo uma caixa de diálogo modal.Para abrir o designer, verifique se o excel ou Word têm uma caixa de diálogo modal aberta, e feche alguns as caixas de diálogo modais.Se não houver nenhuma caixa de diálogo modal aberta, pode haver alguma outra ação necessária antes do excel Word ou responder.

  • O projeto está sendo depurado atualmente.Para abrir o designer, ou parar de concluir a depuração.

  • Um suplemento do excel que é instalado no computador de desenvolvimento está exibindo uma caixa de diálogo quando inicia o excel.Para criar um projeto da nível do excel, primeiro você deve desativar o suplemento.

h8c469ey.collapse_all(pt-br,VS.110).gifOs controles aparecem como retângulos pretos no documento ou a planilha

Se você controles de grupo em um documento ou em uma planilha, o Visual Studio não reconhece os controles.Os controles agrupados não podem ser acessados na janela de Propriedades e aparecem como retângulos pretos no documento ou a planilha.Você deve desagrupar os controles para restaurar sua funcionalidade.

h8c469ey.collapse_all(pt-br,VS.110).gifOs controles em um modelo de Word não são visíveis no Visual Studio

Se você abrir um modelo de Word no designer do Visual Studio, os controles no modelo que não estão na linha de texto não podem ser visíveis.Isso ocorre porque o Visual Studio abre modelos de Word no modo de Normal .Para exibir os controles, clique no menu de Modo de Visualização , aponte para O Microsoft Office Word e então clique em Layout de Impressão.

h8c469ey.collapse_all(pt-br,VS.110).gifO comando de clip art de inserção não fará nada no designer do Visual Studio

Quando o excel ou Word é aberto no designer do Visual Studio, clique no botão de Clip-art na guia de Ilustrações em fita não abre o painel de tarefas de Clip-art .Para adicionar desenhos, você deve abrir a cópia da pasta de trabalho ou documento que estão na pasta do projeto (não a cópia que está na pasta \ bin) fora do Visual Studio, adiciona desenhos, e então salve a pasta de trabalho ou documento.

Escrevendo código

Você pode encontrar os seguintes erros quando você escreve o código em projetos do Office.

h8c469ey.collapse_all(pt-br,VS.110).gifAlguns eventos de objetos do Office não são acessíveis ao usar C#

Em alguns casos, você pode ver um erro do compilador com o seguinte quando você tenta acessar um evento específico de uma instância de um assembly que de interoperabilidade primário do Office (PIA) tipos em um projeto Visual C#.

“Ambiguidade entre “Microsoft.Office.Interop.Excel. _Application.NewWorkbook” e “Microsoft.Office.Interop.Excel.AppEvents_Event.NewWorkbook””

Este erro significa que você está tentando acessar um evento que tem o mesmo nome que outra propriedade ou método do objeto.Para acessar o evento, você deve converter o objeto à sua interface de evento.

Os tipos de PIA do Office tem eventos que implementam duas interfaces: uma interface principal com todas as propriedades e métodos, e uma interface de evento que contém os eventos que são expostas pelo objeto.Essas interfaces de evento usam os eventosemde objectnameconvenção de nomenclatura _Event, como Microsoft.Office.Interop.Excel.AppEvents_Event e Microsoft.Office.Interop.Word.ApplicationEvents2_Event.Se você não pode acessar um evento que você espera encontrar em um objeto, converter o objeto à sua interface de evento.

Por exemplo, os objetos de Microsoft.Office.Interop.Excel.Application têm um evento de NewWorkbook e uma propriedade de NewWorkbook .Para manipular o evento de NewWorkbook , converter Microsoft.Office.Interop.Excel.Application a interface de AppEvents_Event .O exemplo de código a seguir demonstra como fazer isso em um projeto da nível do excel.

private void ThisWorkbook_Startup(object sender, System.EventArgs e)
{
    ((Excel.AppEvents_Event)this.Application).NewWorkbook += 
        new Excel.AppEvents_NewWorkbookEventHandler(ThisWorkbook_NewWorkbook);
}

void ThisWorkbook_NewWorkbook(Excel.Workbook Wb)
{
    // Perform some work here.
}

Para obter mais informações sobre o evento interfaces em PIAs do Office, consulte Overview of Classes and Interfaces in the Office Primary Interop Assemblies.

h8c469ey.collapse_all(pt-br,VS.110).gifNão pode referenciar classes de PIA do Office nos projetos que destinam-se .NET Framework 4 ou .NET Framework 4.5

Em projetos que destinam-se .NET Framework 4 ou .NET Framework 4.5, o código que referencia uma classe que é definida em um PIA do Office não será compilado por padrão.As classes em PIAs usam a classe de objectnameconvenção de nomenclatura, como DocumentClass e WorkbookClass.Por exemplo, o seguinte código de um projeto do suplemento ao Word não será compilado.

Dim document As Word.DocumentClass = Globals.ThisAddIn.Application.ActiveDocument
Word.DocumentClass document = (Word.DocumentClass) Globals.ThisAddIn.Application.ActiveDocument;

Esse código a seguir compila resulta em erros:

  • Visual Basic: A “referência à classe “DocumentClass” não é permitida quando o assembly é associada usando o modo sem PIA”.

  • Visual # C: “Do tipo “Microsoft.Office.Interop.Word.DocumentClass Interoperabilidade” não pode ser inserido.Use a interface aplicável em vez disso.”

Para resolver esse erro, altere o código para fazer referência ao invés da interface correspondente.Por exemplo, em vez de que referencia um objeto de DocumentClass , referenciam uma instância da interface de Document em vez disso.

Dim document As Word.Document = Globals.ThisAddIn.Application.ActiveDocument
Word.Document document = Globals.ThisAddIn.Application.ActiveDocument;

Projetos que destinam-se .NET Framework 4 ou .NET Framework 4.5, insira automaticamente todos os tipos de interoperabilidade de PIAs do Office por padrão.Isso compila o erro ocorre porque o recurso inserido os tipos de interoperabilidade funciona somente com interfaces, não classes.Para obter mais informações sobre as interfaces e classes em PIAs do Office, consulte Visão geral das classes e interfaces em assemblies de Interoperabilidade primários Office.Para obter mais informações sobre o recurso inserido os tipos de interoperabilidade em projetos do Office, consulte Projetando e criando soluções do Office.

h8c469ey.collapse_all(pt-br,VS.110).gifReferências para as classes do Office não são reconhecidas

Alguns nomes de classe, por exemplo, Applicationestão em vários namespaces como Microsoft.Office.Interop.Word e System.Windows.Forms.Por esse motivo, Imports/instrução deusing na parte superior dos modelos de projeto inclui uma constante aplicável abreviada, por exemplo:

Imports Word = Microsoft.Office.Interop.Word
using Word = Microsoft.Office.Interop.Word;

Esse uso da instrução de Imports/using requer que você diferencia referências às classes do Office com o qualificador de Word ou o excel, por exemplo:

Dim doc As Word.Document
Word.Document doc;

Você terá erros se você usar uma declaração não qualificada, por exemplo:

Dim doc As Document  ' Class is ambiguous
Document doc;  // Class is ambiguous

Mesmo que você importe o namespace de Word ou Excel e tem acesso a todas as classes nela, você deve qualificar totalmente todos os tipos com Word ou Excel para remover a ambiguidade do namespace.

Projetos imobiliários

Você pode encontrar os seguintes erros quando você compila projetos do Office.

h8c469ey.collapse_all(pt-br,VS.110).gifNão pode compilar a um nível Project baseado em um documento com permissões restritas

Visual Studio não pode criar projetos de um documento nível se o documento restringiu permissões.Se o projeto contém um documento que restringe permissões, o projeto não será compilado, e você receberá a seguinte mensagem na janela de Lista de erros .

“Falha a personalização.”

Se você deseja incluir um documento que restringe permissões, use um documento ilimitado quando você desenvolver e criar a solução.Em seguida, aplicar as permissões restritas para o documento no local de publicação, depois de publicar a solução.

h8c469ey.collapse_all(pt-br,VS.110).gifErros de compilador ocorrem após um controle de NamedRange é excluído

Se você excluir um controle de NamedRange de uma planilha que não é a planilha ativo no designer, o código gerado automaticamente não pode ser removido do seu projeto e erros de compilador podem ocorrer.Para certificar-se de que o código é removido, você sempre deve selecionar a planilha que contém o controle da NamedRange para fazer a planilha ativa antes de excluir o controle.Se o código gerado automaticamente não é excluído quando você exclui o controle, você pode fazer com que o designer para excluir o código ativando a planilha e fazer uma alteração de modo que a planilha se torne marcada como modificada.Quando você reconstrói o projeto, o código é removido.

Projetos de depuração

Você pode encontrar os seguintes erros quando você depura projetos do Office.

h8c469ey.collapse_all(pt-br,VS.110).gifSolicitar para desinstalar aparece quando você publica e instalar uma solução no computador de desenvolvimento

Quando você depura uma solução do Office, você poderá ver o seguinte erro.

A personalização “não pode ser instalado como outra versão atualmente estiver instalado e não pode ser atualizada desse local.”

Este erro indica que você tenha publicado e tem instalado anteriormente a solução do Office no seu computador de desenvolvimento.Para impedir que a mensagem aparece, desinstalar a solução da lista dos programas instalados no computador antes que você possa depurar a solução.Como alternativa, você pode criar outra conta de usuário no seu computador de desenvolvimento para testar a instalação de solução publicado.

h8c469ey.collapse_all(pt-br,VS.110).gifOs projetos da web em nível de rede local de UNC não execução do Visual Studio

Se você criar um projeto da nível do excel ou Word em um local de rede de UNC, você deve adicionar o local do documento para locais confiáveis lista do excel ou Word em.Caso contrário, a personalização não será carregada quando você tenta executar ou depurar o projeto no Visual Studio.Para obter mais informações sobre os locais confiáveis, consulte Concedendo confiança aos documentos.

h8c469ey.collapse_all(pt-br,VS.110).gifSegmentos não são estacionados corretamente após depuração

Os projetos do Office no Visual Studio seguem uma convenção de nomeclatura de segmento que permite que o depurador para fechar o programa corretamente.Se você cria segmentos em sua solução, você deve nomear cada segmento com o prefixo VSTA_ para garantir que os segmentos são tratados corretamente quando você para de depuração.Por exemplo, você pode definir a propriedade de Name de um segmento que esperasse um evento de rede para VSTA_NetworkListener.

h8c469ey.collapse_all(pt-br,VS.110).gifNão pode executar ou depurar qualquer solução do Office no computador de desenvolvimento

Se você não puder executar ou desenvolver um projeto do Office no seu computador de desenvolvimento, você pode ver a seguinte mensagem de erro.

A personalização “não pôde ser carregada como o domínio do aplicativo não pôde ser criada.”

O Visual Studio usa a fusão, o carregador de assembly do.NET Framework, para armazenar em cache os assemblies antes de carregar soluções do Office.Certifique-se de que o Visual Studio pode escrever ao cache de fusão, e tente-se novamente.Para obter mais informações, consulte Assemblies de cópia de sombra.

h8c469ey.collapse_all(pt-br,VS.110).gifO erro para interromper o depurador em um nível a Pack após usado edite e continue

Se você usar edite e continue a fazer alterações no código em um nível se a projetar para o excel ou exprimir quando o projeto estiver no modo de interrupção, você pode ver uma caixa de diálogo com a seguinte mensagem de erro se você posteriormente para o depurador.

“Finalizar o processo em seu estado atual pode causar resultados indesejados que incluem a perda de instabilidade de dados e de sistema.”

Se você clicar em Sim ou Não na caixa de diálogo, Visual Studio finaliza o processo do excel ou Word e para o depurador.Para parar de depuração do projeto sem exibir esta caixa de diálogo, ou exprimir diretamente saída do excel em vez de parando o depurador no Visual Studio.

Consulte também

Tarefas

Solucionando problemas de segurança de solução do Office

Conceitos

Solucionando problemas de implantação de solução do Office

Outros recursos

Solucionando problemas de soluções do Office