使用ApplicationSettingsBase的C#设置 - 漫游和通用

时间:2010-06-13 10:18:12

标签: c# winforms application-settings roaming

我正在使用Windows Forms Application settings architecture(或者您应该引用它)并且我已成功将用户设置保存到AppData。

我想要做的是为特定计算机的所有用户提供一些通用设置,以及在计算机之间与用户漫游的一些设置。例如,我有一些与连接到计算机的外围设备(型号,设置等)和一些用户首选项(如用户界面颜色)有关的设置。

颜色首选项应该与用户一起漫游,但无论是谁登录,外围设置都应保留在本地计算机上。

如何标记这些类型的设置,以便某些设置存储在All Users/AppData/...中,而某些设置存储在[user name]/AppData/...中?

请注意,我想要应用程序级别设置 - 将安装应用程序的每台计算机都有不同的设置。

我正在瞄准.Net 3.0,如果这会产生影响。

2 个答案:

答案 0 :(得分:2)

通过[SettingsManageability]属性完成。 LocalFileSettingsProvider类检查它,只要应用程序不是ClickOnce部署,该属性的存在似乎就足够了。看起来很无用,设置设计师不支持它。

答案 1 :(得分:0)

从您关联的页面:

  

设置文件位置

     

app.exe.config和的位置   user.config文件将根据不同而有所不同   应用程序的安装方式。对于   基于Windows窗体的应用程序   复制到本地计算机上,   app.exe.config将驻留在同一个   directory作为基本目录   应用程序的主要可执行文件,   和user.config将驻留在   由...指定的位置   Application.LocalUserAppDataPath   属性。对于已安装的应用程序   通过ClickOnce,这两个   文件将驻留在ClickOnce中   下面的数据目录   %InstallRoot%\ Documents and   设置\用户名\本地设置。

     

如果用户启用了漫游配置文件,这些文件的存储位置会略有不同   使用户能够定义不同的   Windows和应用程序设置时   他或她正在使用其他电脑   在域内。在这种情况下,两者   ClickOnce应用程序和   非ClickOnce应用程序将具有   他们的app.exe.config和user.config   存储在。下的文件   %InstallRoot%\ Documents and   设置\用户名\应用程序数据。

     

有关如何使用的更多信息   应用程序设置功能   使用新的部署技术,   请参阅ClickOnce和Application   设置。有关的更多信息   ClickOnce数据目录,请参阅   访问本地和远程数据   ClickOnce Applications。