2

所有,我有一个大型应用程序。此应用程序使用 .config 文件来处理其各种设置。这在开发中很好,.config 文件可以在各自的\bin文件夹(Release 和 Debug)中找到并愉快地工作。我已经编写了一个 NSIS 安装程序,我现在正在运行该应用程序;它运行良好,保存设置,恢复设置并且通常是一个很好的 LAD。

但是,“MyApp.exe.config”不是设置写入的位置(我已经检查甚至删除了它,以便可以重新创建它)。它也不在...Users\Me\AppData\Roaming\MyApp

我的应用程序配置文件在哪里?

感谢你的宝贵时间。

编辑。我已经打印出来了System.Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),这指向Roaming上面的 AppData 目录。

4

1 回答 1

1

.net 的配置系统从多个位置获取其设置。

一般配置来自:

  1. 第一个位置是 .net 框架附带的 machine.config 文件。
  2. 下一个位置是应用程序的配置文件。

接下来设置 API 从(使用默认提供程序)获取值:

  1. 编译应用程序时的硬编码默认值。
  2. 应用程序配置文件。
  3. 用户的设置文件。

如果应用程序的配置文件不存在,它将不会被自动创建(这样做是没有意义的,因为它只包含应用程序已经知道的默认值)。

但是,保存设置将照常创建一个新的用户设置文件。

于 2012-10-04T16:27:49.680 回答