c#-App.config放置和访问

c#-App.config放置和访问,c#,app-config,config,C#,App Config,Config,我创建了一个c#.net应用程序,它使用App.Config。 当然,在调试过程中,一切正常。 我可以访问该文件进行读写 但是当我为我的应用程序创建一个安装程序时,编写部分就不再工作了 这是因为应用程序安装在程序文件中。您无法写入de程序文件文件夹 我有点想办法把app.config放在deAppData文件夹中,但我无法让它工作 我想知道的是如何指示我的安装程序将文件放置在正确的位置,以及如何创建正确的函数将其写入该位置 以下是我到目前为止的情况: public static void Wr

我创建了一个c#.net应用程序,它使用App.Config。 当然,在调试过程中,一切正常。 我可以访问该文件进行读写

但是当我为我的应用程序创建一个安装程序时,编写部分就不再工作了

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

我有点想办法把app.config放在deAppData文件夹中,但我无法让它工作

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

以下是我到目前为止的情况:

 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");
}

提前感谢大家

文件
App.config
是开发过程中使用的名称,在调试过程中,VS可以很好地读取它

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


希望有帮助。

您如何安装该应用程序?基本思想是在安装过程中为文件(即app.config)授予适当的访问权限。app.config文件应保留在安装位置,而不是应用程序中的数据中。这似乎是访问问题,您需要授予对app.config文件的写访问权。嗨,伙计们,问题是,在windows vista和7中,您无法写入程序文件目录。。。