Compartilhar via


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 pré implantação de ClickOnce, você pode instalar soluções do Office a nível de, e então copiar o documento o computador do usuário final. Isso requer que você alterar o manifesto do aplicativo, e novamente sinal o aplicativo e manifestos de implantação antes de instalação.

Aplica-se a: As informações neste tópico se aplicam a projetos em níveis de documento e aplicativo para a Visualização do Microsoft Office 2013 e o Microsoft Office 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.

Essa explicação passo a passo mostra as seguintes tarefas:

  • Criando uma solução do Office para implantar.

  • Implementando uma ação de pré implantação que copia um documento para a área de trabalho do usuário final.

  • Alterar o manifesto do aplicativo de solução do Office para executar a ação de pré implantação.

  • a assinatura de manifestos de aplicativo e implantação.

Dica

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 de Visual Studio.

Pré-requisitos

Para completar este passo-a-passo, são necessários os seguintes componentes:

-

Uma edição do Visual Studio 2012 que inclui o Microsoft Office Developer Tools. Para obter mais informações, consulte [Configurando um computador para desenvolver soluções do Office](https://msdn.microsoft.com/pt-br/library/bb398242\(v=vs.110\)).
  • Excel 2013 Preview ou Excel 2010.

  • Um computador de teste.

Criando um novo projeto

Primeiro, crie um projeto de pasta de trabalho do Excel.

Para criar um novo projeto do excel

  • Crie um projeto da nível do excel. Nomeie o projeto ExcelWorkbook, e salvar o projeto para o diretório de %USERPROFILE% \ documents \ Visual Studio 2012 \ projects . Para obter mais informações, consulte Como: criar projetos do Office em Visual Studio.

    O Visual Studio abre a nova pasta de trabalho do Excel no designer e adiciona o projeto de ExcelWorkbook a SoluçãoExplorer.

Criando um projeto de biblioteca de classe que define a ação de pré Implantação

Você deve definir a ação de pré implantação em uma biblioteca separada da classe. A ação de pré implantação executa o copia o documento o computador do usuário final.

Para criar uma biblioteca de classes para a ação de pré implantação

  1. Em o menu de Arquivo , aponte para Adicionar, e clique em Novo Projeto.

  2. Em a caixa de diálogo de Adicionar novo projeto , no painel de Modelos Instalados , clique em Janelas.

  3. Em o painel de Modelos , clique ClasseBiblioteca.

  4. Em o campo de Nome , o tipo FileCopyPDA, e clique em OK.

  5. Em Gerenciador de Soluções, clique FileCopyPDA.

  6. Em o menu de Projeto , clique em AdicionarReferência.

    a caixa de diálogo de Adicionar Referência aparece.

  7. Em a guia de .NET , adicione referências a Microsoft.VisualStudio.Tools.Applications.Runtime e a Microsoft.VisualStudio.Tools.Applications.ServerDocument.

  8. Em o arquivo de código Class1, adicione o seguinte usando ou instruções de Importações à parte superior do código da web.

    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;
    
  9. Renomeie a classe para FileCopyPDAem seguida, adicione o seguinte código à classe de FileCopyPDA . Esse código indica que a classe de FileCopyPDA herda de IAddInPostDeploymentAction.

    Public Class FileCopyPDA
        Implements IAddInPostDeploymentAction
    
    public class FileCopyPDA : IAddInPostDeploymentAction
    
  10. Adicione o seguinte código para implementar o método de IAddInPostDeploymentAction.Execute . Esse código executa as seguintes tarefas:

    • Copia o arquivo de pasta de trabalho do Excel na área de trabalho do usuário se a solução é instalado ou atualizada.

    • Altera a propriedade de _AssemblyLocation de um caminho relativo a um caminho totalmente qualificado para o manifesto de implantação. Isso é feito usando os métodos e de AddCustomization de RemoveCustomization .

    • exclui o arquivo se a solução é desinstalada.

    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;
        }
    }
    

compilação e publicação a solução

Use Assistente de Publicação ou Página do Projeto para criar e publicar as soluções do Office para seu computador de desenvolvimento.

Para publicar o projeto do excel

  1. Em SoluçãoExplorer, clique com o botão direito do mouse no projeto de FileCopyPDA , clique em Compilar.

  2. Em SoluçãoExplorer, clique com o botão direito do mouse no projeto de ExcelWorkbook , clique em Compilar.

  3. Em SoluçãoExplorer, clique com o botão direito do mouse no projeto de ExcelWorkbook , clique em Adicionar Referência.

  4. Na caixa de diálogo Add Reference, clique na guia .NET .

  5. clique FileCopyPDA, e clique OK.

  6. Em Gerenciador de Soluções, clique no projeto de ExcelWorkbook .

  7. Em o menu do projeto, clique em Nova Pasta.

  8. Dados Digite e pressione a tecla de Enter .

  9. Em Gerenciador de Soluções, clique na pasta de Dados .

  10. Em o menu do projeto, clique em Adicionar item existente.

  11. Em a caixa de diálogo de Adicionar item existente , vá para o diretório de saída para o projeto de ExcelWorkbook .

  12. Clique ExcelWorkbook.xlsx, e clique Adicionar.

  13. Em SoluçãoExplorer, clique ExcelWorkbook.xlsx.

    Dica

    Se você alterar esse arquivo posteriormente, certifique-se atualizar o arquivo adicionando a versão mais recente do arquivo.

  14. Em a janela de Propriedades , altere a propriedade de Ação de Compilação a Conteúdo, e a propriedade de Copiar para Diretório de Saída a Copiarse mais recente.

  15. Publicar o projeto de ExcelWorkbook para a pasta de c:\publish . Para obter mais informações, consulte Como: publica uma solução do Office, usando o ClickOnce.

Alterar o manifesto do aplicativo

Use o editor XML no Visual Studio para alterar o manifesto do aplicativo para executar a ação de pré implantação de cópia de Arquivo. O conteúdo de um manifesto de aplicativo é semelhante a uma conta de materiais, que lista os conteúdo de uma caixa; um manifesto de aplicativo lista todos os assemblies dependentes e necessários. O manifesto do aplicativo para uma solução do Office também lista os assemblies que devem ser carregados por um aplicativo do Office para personalizações de suplementos e da nível de aplicativo.

para adicionar a instalação as dependências ao aplicativo manifestam

  1. Abra o diretório de c:\publish com Arquivo Explorer.

  2. Abra a pasta de arquivos de aplicativo e abra a pasta de ExcelWorkbook_1_0_0_0 .

  3. Abra o arquivo de ExcelWorkbook.dll.manifest em um editor de texto.

  4. Adicione de código a seguir após o elemento de </vstav3:update> . Para o atributo da classe de elemento de <vstav3:entryPoint> , use a seguinte sintaxe: NamespaceName.ClassName. Em esse exemplo, o namespace e nomes de classe são os mesmos, para que o nome resultante do ponto de entrada é 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>
    

a assinatura de manifestos

Os seguintes sinais de procedimento e atualizações o manifesto do aplicativo para manifestos de implantação. Isso garante que os arquivos adulterados não estão instalados em computadores de usuário final.

Novamente assinar os manifestos de aplicativo e implantação

  1. Copie o arquivo de certificado ExcelWorkbook_TemporaryKey.pfx do diretório de solução %USERPROFILE%\Documents\Visual Studio 2012\Projects\ExcelWorkbook\ExcelWorkbook no diretório c:\publish\Application Files\ExcelWorkbook_1_0_0_0.

  2. Abrir o prompt de comando do Visual Studio.

  3. Altere para o diretório de arquivos c:\publish\Application \ ExcelWorkbook_1_0_0_0 .

  4. Assinar o manifesto do aplicativo alterado com o seguinte comando:

    mage -sign ExcelWorkbook.dll.manifest -certfile ExcelWorkbook_TemporaryKey.pfx
    

    A mensagem “ExcelWorkbook.dll.manifest assinados com êxito” aparece.

  5. Altere para o diretório de c:\publish .

  6. 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 assinados com êxito” aparece.

  7. Copie o arquivo de ExcelWorkbook.vsto para o diretório de arquivos c:\publish\Application \ ExcelWorkbook_1_0_0_0 .

Testando a ação de pré Implantação

O procedimento a seguir garante que o manifesto atualizado instalar a pasta de trabalho do Excel e copiar a pasta de trabalho para a área de trabalho do usuário final.

Para testar a ação de pré implantação

  1. Copiar o diretório de c:\publish a um computador de teste.

  2. Executar o programa Setup.exe, ou se os pré-requisitos estiverem instalados no computador de teste, clique duas vezes no manifesto de implantação de ExcelWorkbook.vsto .

    Instalador de Personalização do Microsoft Office Aparece.

  3. Clique em Instalar.

    a caixa de diálogo de Instalador de Personalização do Microsoft Office mostra a seguinte mensagem: “Personalização do Microsoft Office foi instalada com êxito.” A pasta de trabalho do Excel é copiado para a área de trabalho do usuário final.

  4. Abra o arquivo de ExcelWorkbook.xlsx da área de trabalho.

Consulte também

Tarefas

Como: assinar novamente os manifestos de aplicativo e implantação

Outros recursos

Implantação de soluções do Office