Partilhar via


Arquitetura de personalizações de nível de documento

Se aplica a

As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office.

Tipo de Projeto

  • Projetos de nível de documento

Versão do Microsoft Office

  • Microsoft Office Sistema de 2007

  • Microsoft Office 2003

For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto.

Ferramentas do Visual Studio para o Office inclui projetos para criar personalizações em nível de documento para Microsoft Office Word e Microsoft Office Excel.Este tópico descreve os seguintes aspectos de Ferramentas do Visual Studio para o Office personalizações:

  • Noções básicas sobre personalizações

  • Componentes de personalizações

  • Como as personalizações funcionam com o Microsoft Office Sistema de 2007

  • Como as personalizações funcionam com o Microsoft Office 2003

Para Geral informações sobre como usar Ferramentas do Visual Studio para o Office personalizações, consulte Visão geral de desenvolvimento de soluções do Office, Introdução personalizações de nível de documento programação para Worde Introdução personalizações de nível de documento programação para Excel.

Noções básicas sobre personalizações

Quando você cria uma personalização usando Ferramentas do Visual Studio para o Office, criar um código gerenciado Assembly está associado um documento específico.Um documento ou pasta de trabalho com um assembly vinculado é considerada ter gerenciado extensões de código.For more information, see Assemblies em Visão geral de soluções do Office.

Quando um usuário abre o documento, o assembly é carregado pelo aplicativo do Microsoft Office.Depois que o assembly for carregado, a personalização pode responder a eventos enquanto o documento estiver Abrir.A personalização também pode chamar o modelo de objeto para automatizar e estender o aplicativo enquanto o documento estiver Abrir, e ele pode usar alguma das classes na .NET Framework.

O assembly se comunica com componentes de COM do aplicativo através do assembly de interoperabilidade primária do aplicativo.Para obter mais informações, consulte Assemblies de interoperabilidade primários Office e Visão geral de desenvolvimento de soluções do Office.

Ferramentas do Visual Studio para o Office carrega cada assembly em um domínio de aplicativo diferente.Isso significa que uma solução que se comporta incorretamente não pode fazer com que Outro soluções para falhar.Ele também garante que quando o documento é Fechada, Tudo o código é Fechada Para Baixo, e os assemblies são descarregados da memória.Personalizações em nível de documento são projetadas para trabalhar com um Simples documento em um domínio de Simples aplicativo.Não foram criados para comunicação entre documentos. Para obter mais informações sobre domínios de aplicativo, consulte Visão Geral Sobre Domínios de Aplicativos.

Observação:

Personalizações em nível de documento que você Criar usando Ferramentas do Visual Studio para o Office está projetado para ser usado apenas quando o aplicativo for iniciado por um usuário final.Se o aplicativo for iniciado por meio de programação (por exemplo, usando automação), a personalização pode não funcionar conforme o esperado.

Design-Time e experiências de tempo de execução

Para entender a arquitetura de soluções de Ferramentas do Visual Studio para o Office, isso ajuda a entender as experiências de criação de uma solução e de Executando uma solução.

Tempo de design

A experiência de tempo de design inclui as seguintes etapas:

  1. O desenvolvedor cria um projeto de nível de documento em Visual Studio.O projeto inclui o documento e o assembly que é executado por trás do documento.O documento pode já existir (talvez criado por um designer) ou um novo documento pode ser criado junto com o projeto.

  2. O designer em (o desenvolvedor que cria o projeto) ou outra pessoa cria a aparência final do documento para o usuário final.

Tempo de execução

A experiência de tempo de execução inclui as seguintes etapas:

  1. O usuário final abre um documento ou pasta de trabalho que conseguiu extensões de código.

  2. O documento ou pasta de trabalho carrega o assembly compilado.

  3. O assembly responde a eventos como o usuário trabalha no documento ou pasta de trabalho.

Desenvolvedor e perspectiva do usuário final em comparação comparadas o

Como o desenvolvedor trabalha principalmente em Visual Studio, e o usuário final trabalha no Word ou Excel, há duas maneiras de compreender as personalizações em nível de documento.

Perspectiva do desenvolvedor

Perspectiva do usuário final

Usando Visual Studio, o desenvolvedor escreve código que é acessível para o Word e Excel.

Embora pode parecer que o desenvolvedor está criando um arquivo executável que é executado o Word ou Excel, o processo realmente funciona a Outro forma ao redor.O documento está associado um assembly e contém um ponteiro para esse assembly.Quando o documento é aberto, o Word ou Excel localiza o assembly e executa o código em resposta a Tudo eventos manipuladas.

Aqueles que usam a solução simplesmente abrir o documento ou pasta de trabalho (ou criar um novo documento a partir de um modelo) assim como eles abriria qualquer outro arquivo do Microsoft Office.

O assembly fornece personalizações no documento ou pasta de trabalho como automaticamente, preenchendo-lo com dados atual, ou mostrando uma caixa de diálogo para solicitar informações.

Suporte a formatos de documento para personalizações de nível de documento

Quando você Criar um projeto de personalização, você pode escolher o Formatarar do documento que você deseja usar no projeto.For more information, see Como: Criar o Visual Studio Tools para projetos do Office.

A tabela a seguir lista os formatos de documento que você pode usar em personalizações em nível de documento para o Excel.

O Excel 2007

O Excel 2003

Pasta de trabalho do Excel (.xlsx)

Macro do Excel Habilitado pasta de trabalho (.xlsm)

O Excel Binário pasta de trabalho (.xlsb)

Pasta de trabalho do Excel 97-2003 (.xls)

Modelo do Excel (.xltx)

Modelo habilitado para macro (.xltm) do Excel

Modelo do Excel 97-2003 (.xlt)

Pasta de trabalho do Excel (.xls)

Modelo do Excel (.xlt)

A tabela a seguir lista os formatos de documento que você pode usar em personalizações em nível de documento do Word.

Word 2007

Word 2003

Documento do Word (.docx)

O documento habilitado para macro do Word (.docm)

Documento do Word 97-2003 (.doc)

Modelo do Word (.dotx)

Modelo de habilitado para macro do Word (.dotm)

Modelo do Word 97-2003 (.dot)

Documento do Word (.doc)

Modelo do Word (.dot)

Se você basear uma personalização do Microsoft Office 2007 em um documento que foi criado no Microsoft Office 2003, Ferramentas do Visual Studio para o Office não Alterar o Formatarar de arquivo do documento.

Você deve Design gerenciado extensões de código apenas para documentos nos formatos com suporte.Caso contrário, determinados eventos não podem ser gerados quando o documento é aberto no aplicativo.Por exemplo, o evento Open não é gerado quando você usa extensões de código gerenciada com pastas de trabalho salvas no Formatarar Planilha XML do Excel ou na página da Web (.htm; Formatarar .HTML).

Suporte para documentos do Word que possuem .XML Nome do Arquivo extensões

Os modelos de projeto de nível de documento para Word 2003 e Word 2007 não permitem que você a Criar projetos com base nos seguintes formatos de arquivo:

  • Documento XML do Word (* xml).

  • Documento XML do Word 2003 (* xml).

Se desejar que seus usuários finais para usar as personalizações nesses formatos de arquivo, ComCompilação e implantar uma personalização que usa um dos formatos de arquivo com suporte especificados na tabela acima.Depois de instalar a personalização, os usuários finais pode salvar o documento no documento XML do Word (* xml) Formatarar (para o Word 2007) ou o documento XML do Word 2003 (* xml) Formatarar (para o Word 2003) e a personalização continuarão a funcionar conforme o esperado.

Componentes de personalizações

Os principais componentes de uma personalização são o documento e o assembly.Em adição desses componentes, há várias Outro partes que desempenham um papel importante no como aplicativos do Microsoft Office descubram e carregar as personalizações.

Manifesto de implantação e manifesto de aplicativo

Personalizações usam manifestos de implantação e manifestos de aplicativo para identificar e carregar o máximo Versão Atual do assembly de personalização.A implantação do manifesto aponta para o manifesto do aplicativo atual.O aplicativo manifesto aponta para o assembly de personalização e especifica a entrada ponto classe (ou classes) para executar no assembly.For more information, see Aplicativo e manifestos de implantação in Office Solutions.

O Visual Studio Tools for Office Tempo de execução

Para executar as personalizações que são criadas usando Ferramentas do Visual Studio para o Office, computadores de usuários finais devem ter o Tempo de execução Ferramentas do Visual Studio para o Office instalado.O Tempo de execução Ferramentas do Visual Studio para o Office inclui componentes não gerenciados que Carregar o assembly de personalização e também um conjunto de módulos (assemblies) gerenciados.Esses assemblies gerenciados fornecem o modelo de objeto que seu código de personalização usa para automatizar e estender o aplicativo host.

For more information, see O Visual Studio Tools for Visão geral de tempo de execução do Office.

Como personalizações funcionam com o Microsoft Office Sistema de 2007

Quando um usuário abre um documento que faz parte de uma personalização do Microsoft Office 2007, o aplicativo usa o manifesto de implantação que está vinculado o documento para localizar e carregar o máximo Versão Atual do assembly de personalização.O local do manifesto de implantação é armazenado em uma propriedade de documento Personalizar chamada _AssemblyLocation.A Cadeia de Caracteres que identifica esse local é inserida na propriedade quando você Compilação a solução.

Os pontos de manifesto de implantação para o aplicativo manifesto, que, em seguida, aponta para o assembly mais atual.For more information, see Aplicativo e manifestos de implantação in Office Solutions.

A ilustração a seguir mostra o Basic arquitetura de uma personalização para um documento do Microsoft Office Sistema 2007.

Arquitetura de personalização para o 2007 Microsoft Office Sistema

Carregando o processo para personalizações no 2007 Microsoft Office Sistema

Estas etapas ocorrerão quando um usuário abre um documento que é parte de uma solução do Microsoft Office 2007:

  1. O aplicativo Microsoft Office verifica as propriedades Personalizars de documento para ver se há código gerenciado extensões associadas ao documento.For more information, see Visão geral de propriedades de documento Personalizar.

  2. Se não houver extensões de código gerenciado, o aplicativo carrega VSTOEE.dll, que carrega VSTOLoader.dll.Esses são não gerenciados DLLs que são os componentes de carregador para o Microsoft Visual Studio Tools para o Microsoft Office system (versão 3.0 Runtime).For more information, see O Visual Studio Tools for Visão geral de tempo de execução do Office.

  3. VSTOLoader.dll carrega a .NET Framework e inicia a parte gerenciada o Tempo de execução Ferramentas do Visual Studio para o Office.

  4. Se o documento é aberto em um local Outro que o computador local, o Tempo de execução Ferramentas do Visual Studio para o Office verifica se o local do documento está na lista Locais confiáveis a Configurações da Central de Confiabilidade para esse aplicativo do Office específico.Se o local do documento não estiver em um local confiável, a personalização não é confiável, e o processo de Carregar pára aqui.

  5. O Tempo de execução Ferramentas do Visual Studio para o Office instala a solução se ele ainda não foi instalado, baixa os manifestos de aplicativo e implantação mais recentes e executa uma série de verificações de segurança.For more information, see Segurança no Office Solutions (sistema de 2007).

  6. Se a personalização for confiável para ser executado, o Tempo de execução Ferramentas do Visual Studio para o Office usa o manifesto de implantação e manifesto de aplicativo para Marcar atualizações do assembly.Se uma Novo versão do assembly não estiver disponível, o tempo de execução baixa a Novo versão do assembly ao cache ClickOnce no computador cliente.For more information, see Implantando soluções do Office (Sistema de 2007).

  7. O Tempo de execução Ferramentas do Visual Studio para o Office cria um novo domínio de aplicativo no qual carregar o assembly de personalização.

  8. O Tempo de execução Ferramentas do Visual Studio para o Office carrega o assembly de personalização para o domínio do aplicativo.

  9. O Tempo de execução Ferramentas do Visual Studio para o Office chama o manipulador de eventos Startup no seu assembly de personalização.For more information, see O Visual Studio Tools for Office Projeto eventos.

Como as personalizações funcionam com o Microsoft Office 2003

Quando um usuário abre um documento que faz parte de uma personalização do Microsoft Office 2003, o aplicativo usa o manifesto do aplicativo que está incorporado no documento para localizar e carregar o máximo Versão Atual do assembly de personalização.O manifesto do aplicativo incorporado pode apontar diretamente para o assembly, ou ele pode apontar para um manifesto de implantação que é usado para localizar as atualizações de assembly.For more information, see Aplicativo e manifestos de implantação in Office Solutions.

O manifesto do aplicativo incorporado está contido em um Controlarar incorporado invisível chamado o Controlarar de armazenamento em tempo de execução.For more information, see Visão geral do Controlarar em tempo de execução armazenamento.

A ilustração a seguir mostra o Basic arquitetura de uma personalização para um documento do Microsoft Office 2003.

Arquitetura de personalização para Microsoft Office 2003

Carregando o processo para personalizações no Microsoft Office 2003

Estas etapas ocorrerão quando um usuário abre um documento que é parte de uma solução do Microsoft Office 2003:

  1. O aplicativo Microsoft Office verifica as propriedades Personalizars de documento para ver se há código gerenciado extensões associadas ao documento.For more information, see Visão geral de propriedades de documento Personalizar.

  2. Se não houver extensões de código gerenciado, o aplicativo carrega AddinLoader.dll.Isso é uma DLL não gerenciada que é o componente de carregador para o O Visual Studio 2005 Tools for Office Second Edition runtime.For more information, see O Visual Studio Tools for Visão geral de tempo de execução do Office.

  3. AddinLoader.dll carrega a .NET Framework e inicia a parte gerenciada o Tempo de execução Ferramentas do Visual Studio para o Office.

  4. O Tempo de execução Ferramentas do Visual Studio para o Office cria um domínio de aplicativo, define a diretiva para o domínio de aplicativo para não confiar no meu zona do computador e verifica o armazenamento de diretiva de segurança do código de Acessar para localizar uma diretiva para o assembly de personalização.

  5. O .NET Framework valida as evidências apresentada pelo assembly com a diretiva.Se ele falhar, um erro é gerado.Se ele passa, o processo continua.

  6. Se a personalização usa um manifesto de implantação, o Tempo de execução Ferramentas do Visual Studio para o Office usa-lo para Marcar atualizações de assembly.Se as atualizações forem necessárias, elas são executadas agora.

  7. O Tempo de execução Ferramentas do Visual Studio para o Office carrega o assembly no domínio do aplicativo.

  8. O Tempo de execução Ferramentas do Visual Studio para o Office chama o manipulador de eventos Startup no seu assembly de personalização.For more information, see O Visual Studio Tools for Office Projeto eventos.

Consulte também

Conceitos

Arquitetura de nível de aplicativo Adicionar-ins

O Visual Studio Tools for Visão geral de tempo de execução do Office

Criar soluções do Office no Visual Studio

Visão geral de propriedades de documento Personalizar

Modelo de dados no nível de documento personalizações

Visão geral do Controlarar em tempo de execução armazenamento

Outros recursos

Arquitetura do Ferramentas do Visual Studio para soluções do Office Arquitetura das Soluções das Ferramentas do Visual Studio para o Office

Segurança em soluções do Office