访问特殊文件夹中的App.exe.config文件

时间:2012-05-08 14:51:42

标签: c# winforms configuration-files

全部,我正在使用

将应用程序设置写入'application.exe.config'文件
Properties.Settings.Default.SomeSetting = someVal;
Properties.Settings.Default.Save();

我被要求在安装之间保持设置,有两条路线;切换到使用注册表,或将.config文件保存到安装之间保留的单独的特殊文件夹(由于设置数量,我选择了后者)。

我的.config被写入奇数目录,即

C:\Users\Administrator\AppData\Local\MyApp\
    MyApp.vshost.exe_Url_mzfwtdo5po4pcuabybebhsn5yfltbb3w\1.0.0.0

我的问题是:如何在C#中选择此目录?

注意:我试过了

string appPath = Application.ExecutablePath;
Configuration config = ConfigurationManager.OpenExeConfiguration(appPath);
string strIPACostConfigFile = config.FilePath;

这给了我安装目录中的初始.config。

感谢您的时间。

2 个答案:

答案 0 :(得分:1)

  

我的问题是:如何在C#中选择此目录?

你做不到。 App.exe.config文件可以位于以下两个位置之一,除非您自己加载,生成和保存配置文件,否则您将无法在所需位置找到它。

当然,微软决定的位置是它的正确位置

答案 1 :(得分:1)

您不必知道配置文件的位置。您只需要默认设置为true,并在程序启动时调用以下调用。

if (Settings.Default.IsUpgrade)
{
  Settings.Default.Upgrade();
  Settings.Default.IsUpgrade = false;
  Settings.Default.Save();
}

这样,在早期版本中进行的设置将迁移到新版本。