AppSettings,UserSettings,MachineSettings

时间:2013-03-20 18:18:14

标签: c# configuration permissions settings

我经常遇到向a)应用程序用户和b)应用程序本身提供配置的问题。

.Net拥有自己的设置框架,其中配置基于XML存储在app.settings文件中(分别为user.settings)。

说到user.setting,一切都很好。对于使用我的应用程序的每个用户,都会创建一个自己的user.settings。用户有权更改自己的设置,不会影响应用程序设置或其他用户的配置。

BUT

一般应用程序设置app.settings存储在程序集文件夹中,安装应用程序时大多数C:\Program Files\\...。因此,普通用户无法在没有管理员权限的情况下更改任何设置。

...也

有时我不希望设置绑定到特定应用程序或用户,而是绑定到当前运行应用程序的计算机。像许可证文件一样,我不想让计算机的每个用户都为自己激活应用程序。

在XP中,机器设置有隐藏文件夹C:\ProgramData,但现在在Windows 7/8中,常规安装程序在其中创建的每个文件夹似乎都只能以管理员权限进行写入。

毕竟如何解决这个荒谬的许可问题?有没有办法让普通用户更改app.settings,并为app.settings中的每个用户分配全局设置,比如machine.settings?

0 个答案:

没有答案