C# Configurações usando ApplicationsettingSbase - Roaming e Common
-
27-09-2019 - |
Pergunta
Estou usando o Windows Forms Aplicativo Configurações Arquitetura (ou no entanto, você deve se referir a ele) e estou salvando com sucesso as configurações do usuário no AppData.
O que eu quero fazer é ter algumas configurações comuns a todos os usuários de uma determinada máquina e algumas configurações que vagam com os usuários através das máquinas. Por exemplo, tenho algumas configurações relacionadas a um periférico anexado ao computador (modelo, configurações etc.) e algumas preferências do usuário, como cores da interface do usuário.
As preferências de cores devem vagar com o usuário, mas as configurações periféricas devem permanecer no computador local, independentemente de quem está conectado.
Como posso marcar esses tipos de configurações para que alguns sejam armazenados em All Users/AppData/...
e alguns dentro [user name]/AppData/...
?
Observe que i não deseja configurações de nível de aplicativo - cada computador em que o aplicativo será instalado terá configurações diferentes.
Estou atingindo o .NET 3.0 se isso faz a diferença.
Solução
É feito através do [Sideageability] atributo. A classe LocalFileSettingSProvider a verifica, a presença do atributo parece ser suficiente, desde que o aplicativo não seja implantado no clickonce. Parece bastante inútil, o designer de configurações não tem suporte para isso.
Outras dicas
Na página que você vinculou:
Configurações Locais de arquivo
A localização dos arquivos app.exe.config e user.config diferirá com base em como o aplicativo é instalado. Para um aplicativo baseado em formulários do Windows copiado para o computador local, o App.exe.config residirá no mesmo diretório que o diretório base do principal arquivo executável do aplicativo, e o user.config residirá no local especificado pelo aplicativo.localuserAppDatapath propriedade. Para um aplicativo instalado por meio do clickOnce, ambos os arquivos residirão no diretório de dados do clickOnce abaixo do %Installroot % Documents and Settings Nome de usuário Configurações locais.
O local de armazenamento desses arquivos é um pouco diferente se um usuário ativou os perfis de roaming, o que permite que um usuário defina diferentes configurações de Windows e aplicativos quando estiver usando outros computadores em um domínio. Nesse caso, os aplicativos ClickOnce e não clickonce terão seus arquivos App.exe.config e user.config armazenados em %Installroot % Documents and Settings UserName Application Data.
Para obter mais informações sobre como o recurso de configurações do aplicativo funciona com a nova tecnologia de implantação, consulte as configurações do cliques e do aplicativo. Para obter mais informações sobre o diretório de dados do ClickOnce, consulte Acessando dados locais e remotos em aplicativos ClickOnce.