Share via


Assinar novamente os manifestos de aplicativo e implantação

Depois de fazer alterações nas propriedades de implantação no manifesto do aplicativo para aplicativos Windows Forms, aplicativos Windows Presentation Foundation (xbap) ou soluções do Office, você precisa assinar novamente os manifestos de aplicativo e de implantação com um certificado. Esse processo ajuda a garantir que arquivos violados não sejam instalados nos computadores dos usuários finais.

Outro cenário em que você pode assinar novamente os manifestos é quando os clientes desejam usar um certificado próprio para assinar o aplicativo e os manifestos de implantação.

Assinar novamente os manifestos de aplicativo e de implantação

Este procedimento pressupõe que você já tenha feito alterações no arquivo de manifesto do aplicativo (.manifest). Para obter mais informações, confira Como alterar as propriedades de implantação.

Observação

No ClickOnce para .NET Core 3.1 e .NET 5 ou posterior, use dotnet-mage.exe em vez de Mage.exe. Para obter mais informações, confira ClickOnce para .NET.

Para assinar novamente os manifestos de aplicativo e implantação com Mage.exe

  1. Abra uma janela de Prompt de comando do Visual Studio.

  2. Altere os diretórios para a pasta que contém os arquivos de manifesto que você deseja assinar.

  3. Digite o comando a seguir para assinar o arquivo de manifesto do aplicativo. Substitua ManifestFileName pelo nome do arquivo de manifesto mais a extensão. Substitua Certificate pelo caminho relativo ou totalmente qualificado do arquivo de certificado e substitua Password pela senha do certificado.

    mage -sign ManifestFileName.manifest -CertFile Certificate -Password Password
    

    Por exemplo, você pode executar o comando a seguir para assinar um manifesto do aplicativo para um suplemento, um aplicativo do Windows Forms ou um aplicativo de navegador do Windows Presentation Foundation. Certificados temporários criados pelo Visual Studio não são recomendados para implantação em ambientes de produção.

    mage -sign WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -sign ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -sign WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  4. Digite o comando a seguir para atualizar e assinar o arquivo de manifesto de implantação, substituindo os nomes de espaço reservado como na etapa anterior.

    mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
    

    Por exemplo, você pode executar o comando a seguir para atualizar e assinar um manifesto de implantação para um suplemento do Excel, um aplicativo do Windows Forms ou um aplicativo de navegador do Windows Presentation Foundation.

    mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  5. Opcionalmente, copie o manifesto de implantação mestre (publish\<nomedoaplicativo>.application) para o diretório de implantação de versão (publish\Application Files\<nomedoaplicativo>_<versão>).

Atualizar e assinar novamente os manifestos de aplicativo e de implantação

Este procedimento pressupõe que você já tenha feito alterações no arquivo de manifesto de aplicativo (.manifest), mas que existam outros arquivos que tenham sido atualizados. Quando os arquivos são atualizados, o hash que representa o arquivo também precisa ser atualizado.

Para atualizar e assinar novamente os manifestos de aplicativo e implantação com Mage.exe

  1. Abra uma janela de Prompt de comando do Visual Studio.

  2. Altere os diretórios para a pasta que contém os arquivos de manifesto que você deseja assinar.

  3. Remova a extensão de arquivo .deploy dos arquivos na pasta de saída de publicação.

  4. Digite o comando a seguir para atualizar o manifesto de aplicativo com os novos hashes para os arquivos atualizados e assinar o arquivo de manifesto de aplicativo. Substitua ManifestFileName pelo nome do arquivo de manifesto mais a extensão. Substitua Certificate pelo caminho relativo ou totalmente qualificado do arquivo de certificado e substitua Password pela senha do certificado.

    mage -update ManifestFileName.manifest -CertFile Certificate -Password Password
    

    Por exemplo, você pode executar o comando a seguir para assinar um manifesto do aplicativo para um suplemento, um aplicativo do Windows Forms ou um aplicativo de navegador do Windows Presentation Foundation. Certificados temporários criados pelo Visual Studio não são recomendados para implantação em ambientes de produção.

    mage -update WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  5. Digite o comando a seguir para atualizar e assinar o arquivo de manifesto de implantação, substituindo os nomes de espaço reservado como na etapa anterior.

    mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
    

    Por exemplo, você pode executar o comando a seguir para atualizar e assinar um manifesto de implantação para um suplemento do Excel, um aplicativo do Windows Forms ou um aplicativo de navegador do Windows Presentation Foundation.

    mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  6. Adicione a extensão de arquivo .deploy de volta aos arquivos, exceto os arquivos de manifesto de aplicativo e de implantação.

  7. Opcionalmente, copie o manifesto de implantação mestre (publish\<nomedoaplicativo>.application) para o diretório de implantação de versão (publish\Application Files\<nomedoaplicativo>_<versão>).