由于安全隐患,这也许是不可能的......我在Visual Studio中为Win表单创建了一个部署包。应用程序在本地引用 app.config 文件,并允许用户通过应用程序更改其中的设置。当我部署应用程序并尝试保存所做的更改时,Windows 显示"权限被拒绝"。是否有我可以作为安装的一部分运行的命令,该命令将为我的app.config文件授予"所有人"安全权限....从而允许我的应用程序编辑它?
谢谢。
如果希望能够写入 app.config 文件,则需要将其移动到共享应用程序数据目录,并修改应用程序以从那里读取配置信息。例如,在 Win7 上:
C:\ProgramData\YourCompany\YourApp\app.config
在 C# 中,若要获取公共应用数据目录,请执行以下操作:
// using System.IO;
string appDataDir = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
您可以在安装程序中使用自定义操作来运行 icacls,以便向所有人授予完全访问权限:
icacls {Path to App.config} /grant Everyone:(F)