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.
As configurações de aplicativo para Windows Forms facilitam a criação, armazenamento e manutenção de preferências personalizadas de aplicativo e usuário no cliente. O documento a seguir descreve como os arquivos de configurações do aplicativo funcionam em um aplicativo ClickOnce e como o ClickOnce migra as configurações quando o usuário atualiza para a próxima versão.
As informações abaixo se aplicam somente ao provedor de configurações de aplicativo padrão, a LocalFileSettingsProvider classe. Se você fornecer um provedor personalizado, esse provedor determinará como ele armazena seus dados e como ele atualiza suas configurações entre as versões. Para obter mais informações sobre provedores de configurações de aplicativo, consulte a arquitetura de configurações do aplicativo.
Arquivos de configurações de aplicativo
As configurações do aplicativo consomem dois arquivos: <app>.exe.config e user.config, onde app é o nome do seu aplicativo Windows Forms. user.config é criado no cliente na primeira vez que seu aplicativo armazena configurações com escopo de usuário. <o aplicativo>.exe.config, por outro lado, existirá antes da implantação se você definir valores padrão para as configurações. O Visual Studio incluirá esse arquivo automaticamente quando você usar seu comando Publicar . Se você criar seu aplicativo ClickOnce usando Mage.exe ou MageUI.exe, deverá verificar se esse arquivo está incluído com outros arquivos do aplicativo ao preencher o manifesto do aplicativo.
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.
Em um aplicativo do Windows Forms não implantado usando ClickOnce, o arquivo <app>.exe.config é armazenado no diretório do aplicativo, enquanto o arquivo user.config é armazenado na pasta do usuário Documents and Settings. Em um aplicativo ClickOnce, <o aplicativo>.exe.config reside no diretório de aplicativos dentro do cache do aplicativo ClickOnce e user.config reside no diretório de dados ClickOnce para esse aplicativo.
Independentemente de como você implanta seu aplicativo, as configurações do aplicativo garantem acesso seguro de leitura ao <aplicativo>.exe.confige acesso seguro de leitura/gravação ao user.config.
Em um aplicativo ClickOnce, o tamanho dos arquivos de configuração usados pelas configurações do aplicativo é restringido pelo tamanho do cache ClickOnce. Para obter mais informações, consulte a visão geral do cache ClickOnce.
.NET Core e .NET 5+
Atualmente, um assembly do .NET Core a ser publicado precisa ser assinado com um arquivo de chave de nome forte. Se não estiver, o método ApplicationSettingsBase.Upgrade não copiará as configurações corretamente após uma nova publicação do ClickOnce. Você pode especificar o uso de um nome forte nas propriedades do projeto do .NET Core, na opção Build > Strong naming.
Atualizações de versão
Assim como cada versão de um aplicativo ClickOnce é isolada de todas as outras versões, as configurações do aplicativo para um aplicativo ClickOnce também são isoladas das configurações para outras versões. Quando o usuário atualiza para uma versão posterior do aplicativo, as configurações do aplicativo comparam as configurações da versão mais recente (com maior número) com as configurações fornecidas com a versão atualizada e mesclam as configurações em um novo conjunto de arquivos de configurações.
A tabela a seguir descreve como as configurações do aplicativo decidem quais configurações copiar.
| Tipo de alteração | Ação de atualização |
|---|---|
| Configuração adicionada ao <app>.exe.config | A nova configuração é mesclada no arquivo <app>.exe.config da versão atual. |
| Configuração removida do <aplicativo>.exe.config | A configuração antiga é removida do <app>.exe.config da versão atual. |
| O padrão da configuração foi alterado; configuração local ainda definida como padrão original no user.config | A configuração é mesclada no user.config da versão atual com o novo padrão como o valor |
| O padrão da configuração foi alterado; configuração definida como não padrão no user.config | A configuração é mesclada no user.config da versão atual com o valor não padrão retido |
Se você criou sua própria classe de wrapper de configurações de aplicativo e deseja personalizar a lógica de atualização, poderá substituir o Upgrade método.
Configurações do ClickOnce e de roaming
O ClickOnce não funciona com configurações de roaming, o que permite que o arquivo de configurações o siga entre computadores em uma rede. Se você precisar de configurações de roaming, precisará implementar um provedor de configurações de aplicativo que armazene as configurações pela rede ou desenvolva suas próprias classes de configurações personalizadas para armazenar configurações em um computador remoto. Para obter mais informações sobre provedores de configurações, consulte a arquitetura de configurações do aplicativo.