0

我创建了使用 App.Config 的 ac#.net 应用程序。当然,调试一切正常。我可以访问文件进行读写。

但是当我为我的应用程序创建安装程序时,编写部分不再起作用。

这是因为应用程序安装在程序文件中。而且您无法写入程序文件文件夹...

我有点想到将 app.config 放在 de AppData 文件夹中的解决方案,但我无法让它工作。

我想知道的是如何指示我的安装程序将文件放置在正确的位置以及如何创建正确的函数将其写入该位置。

这是我到目前为止所拥有的:

 public static void WriteValue(string key, string value)
 {
    string configPath = System.Environment.GetFolderPath(
                                                         Environment.SpecialFolder.ApplicationData) + 
                        "\\Application\\app.config";

    ExeConfigurationFileMap map = new ExeConfigurationFileMap(configPath);

    // Open App.Config of executable
    Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map, 
                                                                           ConfigurationUserLevel.None);

    // Add an Application Setting.
    config.AppSettings.Settings.Remove(key);
    config.AppSettings.Settings.Add(key, value);
    // Save the configuration file.
    config.Save(ConfigurationSaveMode.Modified);
    // Force a reload of a changed section.
    ConfigurationManager.RefreshSection("appSettings");
}

提前谢谢你们

4

1 回答 1

1

该文件App.config是开发过程中使用的名称,在调试过程中 VS 读取它就好了。

但是当您在YourProgram.exe工作室外运行可执行文件时,它会搜索名为YourProgram.exe.config

希望能帮助到你。

于 2013-01-29T07:59:57.650 回答