【发布时间】:2011-10-24 03:23:23
【问题描述】:
我可以告诉你哪些地方不允许非管理员写信:
Environment::GetFolderPath(Environment::SpecialFolder::ApplicationData) + "\\Config.ini";
Environment::GetFolderPath(Environment::SpecialFolder::CommonApplicationData) + "\\monitorService\\Config.ini";
Environment::GetFolderPath(Environment::SpecialFolder::ProgramFiles) + "\\monitorService\\Config.ini";
我对@987654323@ 寄予厚望,但遗憾的是,普通受限用户也无法使用。我需要一个通用的、易于出错、知道和查找的目录,我可以从中加载配置数据并将其保存到其中。我想我可以支持每个用户的配置文件,但我宁愿让事情尽可能简单。
我是否可以让我的安装程序留出registry 或文件系统的某些区域以供普遍访问?我使用 Innosetup 和 .NET 代码进行安装。我注意到(IRC)firefox 为命名的 和 默认用户填充了“应用程序数据”文件夹,所以我猜这是另一种可能性。由于服务需要配置数据,因此将几个短的strings 和ints 存储在注册表之外的任何地方可能太麻烦了。
【问题讨论】:
-
我不明白。究竟使用注册表有什么问题?这就是它的设计目的
-
每个人都应该有相同的配置有什么理由吗?在大多数情况下,最终用户不会期望或不想要这种行为,而且还会引入潜在的安全问题。
标签: windows windows-services filesystems privileges non-admin