Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve um recurso do ClickOnce introduzido no .NET Framework versão 3.5 que permite a implantação de aplicativos ClickOnce de vários locais de rede sem assinar novamente ou alterar os manifestos do ClickOnce.
Observação
Reassinar ainda é o método preferencial para implantar novas versões de aplicativos. Sempre que possível, use o método de resignação. Para obter mais informações, consulte Mage.exe (Ferramenta de Geração e Edição de Manifesto).
Desenvolvedores e ISVs de terceiros podem aceitar esse recurso, facilitando a atualização de seus aplicativos para seus clientes. Esse recurso pode ser usado nas seguintes situações:
Ao atualizar um aplicativo, não para a primeira instalação de um aplicativo.
Quando há apenas uma configuração do aplicativo em um computador. Por exemplo, se um aplicativo estiver configurado para apontar para dois bancos de dados diferentes, você não poderá usar esse recurso.
Excluir deploymentProvider dos manifestos de implantação
No .NET Framework 2.0 e no .NET Framework 3.0, qualquer aplicativo ClickOnce instalado no sistema para disponibilidade offline deve listar um deploymentProvider em seu manifesto de implantação. O deploymentProvider é frequentemente referido como o local de atualização; é o local onde o ClickOnce verifica se há atualizações de aplicativo. Esse requisito, juntamente com a necessidade de os editores de aplicativos assinarem suas implantações, tornou difícil para uma empresa atualizar um aplicativo ClickOnce de um fornecedor ou de outros terceiros. Também dificulta a implantação do mesmo aplicativo de vários locais na mesma rede.
Com as alterações feitas no ClickOnce no .NET Framework 3.5, é possível que um terceiro forneça um aplicativo ClickOnce para outra organização, que pode implantar o aplicativo em sua própria rede.
Para aproveitar esse recurso, os desenvolvedores de aplicativos ClickOnce devem excluir deploymentProvider de seus manifestos de implantação. Esse requisito significa que você deve excluir o -providerUrl argumento ao criar manifestos de implantação com Mage.exe. Ou, se você estiver gerando manifestos de implantação com MageUI.exe, deverá garantir que a caixa de texto Local de Inicialização na guia Manifesto do Aplicativo fique em branco.
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, consulte ClickOnce para .NET.
provedor de implantação e atualizações de aplicativo
A partir do .NET Framework 3.5, você não precisa mais especificar um deploymentProvider no manifesto de implantação para implantar um aplicativo ClickOnce para uso online e offline. Essa alteração dá suporte ao cenário em que você precisa empacotar e assinar a implantação por conta própria, mas permitir que outras empresas implantem o aplicativo em suas redes.
O ponto importante a ser lembrado é que os aplicativos que excluem um deploymentProvider não podem alterar o local de instalação durante as atualizações, até que enviem uma atualização que inclua a deploymentProvider marca novamente.
Aqui estão dois exemplos para esclarecer esse ponto. No primeiro exemplo, você publica um aplicativo ClickOnce que não tem marca deploymentProvider e pede aos usuários que o instalem a partir de http://www.adatum.com/MyApplication/. Se você decidir que deseja publicar a próxima atualização do aplicativo a partir de http://subdomain.adatum.com/MyApplication/, não terá como indicar isso no manifesto de implantação que está em http://www.adatum.com/MyApplication/. Portanto, você tem duas opções:
Diga aos usuários para desinstalarem a versão anterior e instalarem a nova versão do novo local.
Inclua uma atualização em
http://www.adatum.com/MyApplication/que contenha umdeploymentProviderapontando parahttp://www.adatum.com/MyApplication/. Em seguida, libere outra atualização posteriormente apontandodeploymentProviderparahttp://subdomain.adatum.com/MyApplication/.No segundo exemplo, você publica um aplicativo ClickOnce que especifica
deploymentProvidere decide removê-lo. Depois que a nova versão semdeploymentProviderfor baixada para clientes, você não poderá redirecionar o caminho usado para atualizações até lançar uma versão do aplicativo que foideploymentProviderrestaurada. Assim como acontece com o primeiro exemplo,deploymentProviderinicialmente deve apontar para o local de atualização atual, não para o novo local. Nesse caso, se você tentar inserir umdeploymentProviderque se refere ahttp://subdomain.adatum.com/MyApplication/, a próxima atualização falhará.
Criar uma implantação
Para obter orientações passo a passo sobre como criar implantações que podem ser implantadas de diferentes locais de rede, consulte Passo a passo: implantar manualmente um aplicativo ClickOnce que não requer a assinatura nova e que preserva as informações de identidade visual.