Idioma

Gerenciar atualizações para um aplicativo ClickOnce

Os aplicativos ClickOnce podem verificar se há atualizações automaticamente ou programaticamente. Como desenvolvedor, você tem muita flexibilidade para especificar quando e como as verificações de atualização são executadas, se as atualizações são obrigatórias e onde o aplicativo deve verificar se há atualizações.

Você pode configurar o aplicativo para verificar se há atualizações automaticamente antes do aplicativo ser iniciado ou em intervalos definidos após o início do aplicativo. Além disso, você pode especificar uma versão mínima necessária; ou seja, uma atualização será instalada se a versão do usuário for inferior à versão necessária.

Você pode configurar o aplicativo para verificar se há atualizações programaticamente com base em um evento como uma solicitação de usuário. O procedimento "Para verificar se há atualizações programaticamente" neste tópico mostra como você escreveria o código que usa a <xref:System.Deployment.Application.ApplicationDeployment> classe para verificar se há atualizações com base em um evento.

Note

A <xref:System.Deployment.Application.ApplicationDeployment> classe e as APIs no <xref:System.Deployment.Application> namespace não são compatíveis com .NET Core e .NET 5 e versões posteriores. No .NET 7, há suporte para um novo método de acesso às propriedades de implantação do aplicativo. Para obter mais informações, consulte as propriedades de implantação do Access ClickOnce no .NET. O .NET 7 não dá suporte ao equivalente aos métodos ApplicationDeployment.

Você também pode implantar seu aplicativo de um local e atualizá-lo de outro. Consulte o procedimento "Para especificar um local de atualização diferente".

Para obter mais informações, consulte Escolhendo uma estratégia de atualização do ClickOnce.

O comportamento de atualização é gerenciado na caixa de diálogo Atualizações do Aplicativo, disponível na página Publicar do Designer de Projeto.

Para verificar se há atualizações antes do aplicativo ser iniciado

  1. Com um projeto selecionado no Gerenciador de Soluções, no menu Projeto, clique em Propriedades.

  2. Clique na guia Publicar.

    Note

    No ClickOnce para .NET Core 3.1 e .NET 5 ou posterior, você define as propriedades de implantação usando a ferramenta Publicar em vez do assistente de publicação e da página Publicar do Designer de Projeto. Para obter mais informações, consulte Implantar um aplicativo do Windows .NET usando ClickOnce e ClickOnce para .NET.

  3. Clique no botão Atualizações para abrir a caixa de diálogo Atualizações do Aplicativo .

  4. Na caixa de diálogo Atualizações do aplicativo, verifique se a caixa de seleção O aplicativo deve verificar se há atualizações está marcada.

  5. Na seção Escolher quando o aplicativo deve verificar se há atualizações , selecione Antes do aplicativo ser iniciado. Isso garante que os usuários conectados à rede sempre executem o aplicativo com as atualizações mais recentes.

Para verificar se há atualizações em segundo plano após o início do aplicativo

  1. Com um projeto selecionado no Gerenciador de Soluções, no menu Projeto, clique em Propriedades.

  2. Clique na guia Publicar.

  3. Clique no botão Atualizações para abrir a caixa de diálogo Atualizações do Aplicativo .

  4. Na caixa de diálogo Atualizações do Aplicativo , verifique se a caixa de seleção O aplicativo deve verificar se as atualizações estão selecionadas .

  5. Na seção Escolher quando o aplicativo deve verificar se há atualizações, selecione Depois que o aplicativo for iniciado. O aplicativo será iniciado mais rapidamente dessa maneira e, em seguida, verificará se há atualizações em segundo plano e notificará o usuário apenas quando uma atualização estiver disponível. Depois de instaladas, as atualizações não entrarão em vigor até que o aplicativo seja reiniciado.

  6. Na seção Especificar com que frequência o aplicativo deve verificar se há atualizações , selecione Verificar sempre que o aplicativo for executado (o padrão) ou Verificar cada um e inserir um número e intervalo de tempo.

Note

No ClickOnce para .NET Core e .NET 5 ou posterior, essa tarefa não tem suporte. Para obter mais informações, consulte ClickOnce para .NET.

Para especificar uma versão mínima necessária para o aplicativo

  1. Com um projeto selecionado no Gerenciador de Soluções, no menu Projeto, clique em Propriedades.

  2. Clique na guia Publicar.

  3. Clique no botão Atualizações para abrir a caixa de diálogo Atualizações do Aplicativo .

  4. Na caixa de diálogo Atualizações do Aplicativo, verifique se a caixa de seleção O aplicativo deve verificar se há atualizações está marcada.

  5. Selecione a caixa de seleção Especificar uma versão mínima necessária para este aplicativo e, em seguida, insira números Principais, Menores, Build e Revisão para o aplicativo.

Para especificar um local de atualização diferente

  1. Com um projeto selecionado no Gerenciador de Soluções, no menu Projeto, clique em Propriedades.

  2. Clique na guia Publicar.

  3. Clique no botão Atualizações para abrir a caixa de diálogo Atualizações do Aplicativo .

  4. Na caixa de diálogo Atualizações do Aplicativo, certifique-se de que a caixa de seleção O aplicativo deve verificar se há atualizações esteja selecionada.

  5. No campo Local de atualização , insira o local de atualização com uma URL totalmente qualificada, usando o formato http://Hostname/ApplicationNameou um caminho UNC usando o formato \\Server\ApplicationName ou clique no botão Procurar para procurar o local de atualização.

Para verificar se há atualizações programaticamente

  1. Com um projeto selecionado no Gerenciador de Soluções, no menu Projeto, clique em Propriedades.

  2. Clique na guia Publicar.

  3. Clique no botão Atualizações para abrir a caixa de diálogo Atualizações do Aplicativo .

  4. Na caixa de diálogo Atualizações do Aplicativo, verifique se a caixa de seleção O aplicativo deve verificar se há atualizações está desmarcada. (Opcionalmente, você pode marcar essa caixa de seleção para verificar se há atualizações programaticamente e também permitir que o runtime do ClickOnce verifique se há atualizações automaticamente.)

  5. No campo Local de atualização , insira o local de atualização com uma URL totalmente qualificada, usando o formato http://Hostname/ApplicationNameou um caminho UNC usando o formato \\Server\ApplicationName ou clique no botão Procurar para procurar o local de atualização. O local da atualização é onde o aplicativo procurará uma versão atualizada de si mesmo.

  6. Crie um botão, item de menu ou outro item de interface do usuário em um formulário Windows que os usuários selecionarão para verificar se há atualizações. No manipulador de eventos desse item, chame um método para verificar e instalar atualizações. Você pode encontrar um exemplo de código em Visual Basic e Visual C# para esse método em How to: Check for application updates programmatically using the ClickOnce deployment API.

  7. Crie seu aplicativo.