Demonstra Passo a passo: Copiando um documento para o computador do usuário final, após uma instalação de ClickOnce
Usando uma ação de pós-implantação ClickOnce, você pode instalar soluções de nível de documento do Office e, em seguida, copie o documento para o computador do usuário final. Isso requer que você modifique o manifesto do aplicativo e assinar novamente o aplicativo e os manifestos de implantação antes da instalação.
Aplicável a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de nível de aplicativo para Microsoft Office 2010 e o sistema 2007 do Microsoft Office. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.
This walkthrough illustrates the following tasks:
Criando uma solução do Office para implantar.
Implementando uma ação de pós-implantação copia um documento à área de trabalho do usuário final.
Modificando o manifesto do aplicativo do Office solution para executar a ação de pós-implantação.
Manifestos de assinar novamente o aplicativo e implantação.
Observação |
---|
Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Configurações do Visual Studio. |
Prerequisites
You need the following components to complete this walkthrough:
-
Uma edição do Visual Studio 2010 que inclua as ferramentas de desenvolvedor do Microsoft Office. Para obter mais informações, consulte [Configurando um computador para desenvolver soluções do Office](bb398242\(v=vs.100\).md).
Excel 2007 ou Excel 2010.
Um computador de teste.
Creating a New Project
Primeiro, crie um projeto de pasta de trabalho do Excel.
Para criar um novo projeto do Excel
Crie um projeto de nível de documento do Excel. Nomeie o projeto ExcelWorkbooke salvar o projeto para o %USERPROFILE%\Documents\Visual Studio 2010\Projects directory. For more information, see Como: Criar projetos do Office em Visual Studio.
Abre a nova pasta de trabalho do Excel no designer de Visual Studio e adiciona a ExcelWorkbook de projeto para solução Explorer.
Criando um projeto de biblioteca de classe que define a ação de pós-implantação
Você deve definir a ação de pós-implantação em uma biblioteca de classe separada. A ação de pós-implantação executa cópias do documento para o computador do usuário final.
Para criar uma biblioteca de classe para a ação de pós-implantação
No arquivo , aponte para Adde em seguida, clique em Novo projeto.
No Add New Project na caixa de Modelos instalados painel, clique em Windows.
No modelos de painel, clique em classe biblioteca.
No nome , digite FileCopyPDAe em seguida, clique em OK.
Em solução Explorer, clique em FileCopyPDA.
No menu Project, clique em Add referência.
No Add referência na caixa o.NET de guia, adicione as seguintes referências:
Se seus alvos de projeto do Excel a.NET Framework 3.5, adicionar referências para Microsoft.VisualStudio.Tools.Applications.Runtime.v10.0 e Microsoft.VisualStudio.Tools.Applications.ServerDocument.v10.0.
Se seus alvos de projeto do Excel a .NET Framework 4, adicionar referências para Microsoft.VisualStudio.Tools.Applications.Runtime e Microsoft.VisualStudio.Tools.Applications.ServerDocument.
No arquivo de código Class1, adicione o seguinte usando ou Imports instruções para a parte superior do arquivo de código.
Imports Microsoft.VisualStudio.Tools.Applications.Deployment Imports Microsoft.VisualStudio.Tools.Applications
using Microsoft.VisualStudio.Tools.Applications.Deployment; using Microsoft.VisualStudio.Tools.Applications; using System.IO;
Renomeie a classe FileCopyPDAe, em seguida, adicione o seguinte código para o FileCopyPDA classe. Esse código indica que FileCopyPDA classe herda de IAddInPostDeploymentAction.
Public Class FileCopyPDA Implements IAddInPostDeploymentAction
public class FileCopyPDA : IAddInPostDeploymentAction
Adicione o seguinte código para implementar a IAddInPostDeploymentAction.Execute método. Esse código realiza as seguintes tarefas:
Copia o arquivo de pasta de trabalho do Excel para a área de trabalho do usuário, se a solução é instalada ou atualizada.
Alterações na _AssemblyLocation a propriedade de um caminho relativo para um caminho totalmente qualificado para o manifesto de implantação. Isso é feito usando o AddCustomization e RemoveCustomization métodos.
Exclui o arquivo se a solução for desinstalada.
Observação A ação de pós-implantação é executada durante a etapa de desinstalação.NET Framework 3.5.
Sub Execute(ByVal args As AddInPostDeploymentActionArgs) Implements IAddInPostDeploymentAction.Execute Dim dataDirectory As String = "Data\ExcelWorkbook.xlsx" Dim file As String = "ExcelWorkbook.xlsx" Dim sourcePath As String = args.AddInPath Dim deploymentManifestUri As Uri = args.ManifestLocation Dim destPath As String = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) Dim sourceFile As String = System.IO.Path.Combine(sourcePath, dataDirectory) Dim destFile As String = System.IO.Path.Combine(destPath, file) Select Case args.InstallationStatus Case AddInInstallationStatus.InitialInstall, AddInInstallationStatus.Update System.IO.File.Copy(sourceFile, destFile) ServerDocument.RemoveCustomization(destFile) ServerDocument.AddCustomization(destFile, deploymentManifestUri) Exit Select Case AddInInstallationStatus.Uninstall If System.IO.File.Exists(destFile) Then System.IO.File.Delete(destFile) End If Exit Select End Select End Sub
public void Execute(AddInPostDeploymentActionArgs args) { string dataDirectory = @"Data\ExcelWorkbook.xlsx"; string file = @"ExcelWorkbook.xlsx"; string sourcePath = args.AddInPath; Uri deploymentManifestUri = args.ManifestLocation; string destPath = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory); string sourceFile = System.IO.Path.Combine(sourcePath, dataDirectory); string destFile = System.IO.Path.Combine(destPath, file); switch (args.InstallationStatus) { case AddInInstallationStatus.InitialInstall: case AddInInstallationStatus.Update: File.Copy(sourceFile, destFile); ServerDocument.RemoveCustomization(destFile); ServerDocument.AddCustomization(destFile, deploymentManifestUri); break; case AddInInstallationStatus.Uninstall: if (File.Exists(destFile)) { File.Delete(destFile); } break; } }
Criação e a solução de publicação
Use o Publish Wizard ou Página projeto para criar e publicar as soluções do Office no computador de desenvolvimento.
Para publicar o projeto do Excel
No solução Explorer, com o botão direito do FileCopyPDA de projeto e, em seguida, clique em Build.
No solução Explorer, com o botão direito do ExcelWorkbook de projeto e, em seguida, clique em Build.
Em solução Explorer, com o botão direito do ExcelWorkbook de projeto e, em seguida, clique em Add Reference.
In the Add Reference dialog box, click the Projects tab.
Clique em FileCopyPDAe clique em OK.
Em Solution Explorer, clique na ExcelWorkbook project.
No menu Project, clique em Nova pasta.
Tipo de dados e pressione o Enter chave.
Em Solution Explorer, clique na dados pasta.
No menu Project, clique em Add Existing Item.
No Add Existing Item caixa de diálogo, navegue até o diretório de saída para o ExcelWorkbook project.
Clique em ExcelWorkbook.xlsxe clique em Add.
Em solução Explorer, clique em ExcelWorkbook.xlsx.
Observação Se você modificar este arquivo mais tarde, certifique-se de atualizar o arquivo, adicionando a versão mais recente do arquivo.
No Propriedades janela, alterar o Build Action propriedade para conteúdoe o Copy to Output Directory propriedade para Copy if newer.
Publicar o ExcelWorkbook de projeto para o c:\publish pasta. For more information, see Como: Implantar uma solução do Office usando o ClickOnce.
Modificando o manifesto do aplicativo
Use o editor de XML no Visual Studio para modificar o manifesto do aplicativo para executar a ação de pós-implantação de cópia de arquivo. O conteúdo de um manifesto de aplicativo é semelhante a uma lista de materiais, que lista todo o conteúdo de uma caixa; um manifesto de aplicativo lista todos os assemblies dependentes e pré-requisitos. O manifesto de aplicativo para uma solução do Office também lista os assemblies que devem ser carregados por um aplicativo do Office para suplementos de nível de aplicativo e personalizações em nível de documento.
Para adicionar as dependências de instalação para o manifesto de aplicativo
Abrir o c:\publish diretório através do Windows Explorer.
Abra o Arquivos de aplicativo pasta e abra o ExcelWorkbook_1_0_0_0 pasta.
Abrir o ExcelWorkbook.dll.manifest o arquivo em um editor de texto.
Adicione o seguinte código após a </vstav3:update> elemento. Para o atributo de classe da <vstav3:entryPoint> elemento, use a seguinte sintaxe: NamespaceName.ClassName. Neste exemplo, os nomes do namespace e classe são os mesmos, para que o nome de ponto de entrada resultante é FileCopyPDA.FileCopyPDA.
<vstav3:postActions> <vstav3:postAction> <vstav3:entryPoint class="FileCopyPDA.FileCopyPDA"> <assemblyIdentity name="FileCopyPDA" version="1.0.0.0" language="neutral" processorArchitecture="msil" /> </vstav3:entryPoint> <vstav3:postActionData> </vstav3:postActionData> </vstav3:postAction> </vstav3:postActions>
Assinando novamente os manifestos
O procedimento a seguir assina o manifesto de aplicativo e atualiza o manifesto de implantação. Isso garante que os arquivos violados não estão instalados em computadores de usuário final.
Para assinar novamente os manifestos de aplicativo e implantação
Cópia do ExcelWorkbook_TemporaryKey.pfx arquivo de certificado da %USERPROFILE%\Documents\Visual Studio 2010\Projects\ExcelWorkbook\ExcelWorkbook o diretório de solução para o c:\publish\Application Files\ExcelWorkbook_1_0_0_0 diretório.
Abra o prompt de comando Visual Studio.
Altere para o c:\publish\Application Files\ExcelWorkbook_1_0_0_0 directory.
Assinar o manifesto de aplicativo modificado com o seguinte comando:
mage -sign ExcelWorkbook.dll.manifest -certfile ExcelWorkbook_TemporaryKey.pfx
A mensagem "ExcelWorkbook.dll.manifest entrado com êxito" é exibida.
Altere para o c:\publish directory.
Atualizar e assinar o manifesto de implantação com o seguinte comando:
mage -update ExcelWorkbook.vsto -appmanifest "Application Files\Ex celWorkbook_1_0_0_0\ExcelWorkbook.dll.manifest" -certfile "Application Files\ExcelWorkbook_1_0_0_0\ExcelWorkbook_TemporaryKey.pfx"
A mensagem "ExcelWorkbook.vsto entrado com êxito" é exibida.
Copie o arquivo ExcelWorkbook.vsto para o c:\publish\Application Files\ExcelWorkbook_1_0_0_0 directory.
Teste a ação de pós-implantação
O procedimento a seguir assegura que o manifesto atualizado instala a pasta de trabalho do Excel e copia a pasta de trabalho para a área de trabalho do usuário final.
Para testar a ação de pós-implantação
Cópia do c:\publish diretório de um computador de teste.
Execute o programa Setup. exe ou se os pré-requisitos já estão instalados no computador de teste, clique duas vezes o ExcelWorkbook.vsto o manifesto de implantação.
O Instalador de personalização de Microsoft Office aparece.
Clique em instalar.
O Instalador de personalização de Microsoft Office caixa de diálogo mostra a seguinte mensagem: "A personalização de Microsoft Office foi instalada com êxito." A pasta de trabalho do Excel é copiada para a área de trabalho do usuário final.
Abrir o ExcelWorkbook.xlsx o arquivo da área de trabalho.
Consulte também
Tarefas
How to: Re-assinar manifestos de aplicativo e implantação
Conceitos
Implantação de solução avançada do Office
Outros recursos
Histórico de alterações
Date |
History |
Motivo |
---|---|---|
Setembro de 2010 |
Alterado %USERPROFILE%\Documents\Visual Studio 10\Projects para %USERPROFILE%\Documents\Visual Studio 2010\Projects. |
Correção de bug de conteúdo. |