部署 Windows Forms 应用程序后,如何更改默认设置?

When I've deployed a Windows Forms application, how can I change the default settings?

我已经部署了一个 Windows Forms 应用程序。在我的本地开发 PC 上,有一个 settings.settings 文件,其中包含应用程序的所有设置。

我知道根据这个 question 和其他类似的,User.config 文件是在 c:\Users\username\Local Settings\AppData\Local\...

中创建的

但是,我需要更改一个默认设置,这样当用户第一次启动它时,默认设置与我们最初部署应用程序时的设置不同。

所以用户第一次运行该应用程序时,它会创建文件的本地副本。

它基于什么?某处是否有该文件的默认副本,或者它是否已编译到 .exe 中?

我需要更新一个应用程序的默认设置,该应用程序远程部署在多台笔记本电脑上,我只有电话支持。如果我必须重新编译和重新发布,那将是最后的选择。

考虑这些事实可能会有用:

  • 用户设置的默认值存储在 yourapplication.exe 旁边的 yourapplication.exe.config
  • 用户设置的当前值不在此文件中,可以使用 Properties.Default.Settings.Save()
  • 保存其中的任何更改
  • 如果您的可执行文件夹中没有 yourapplication.exe.config,它将使用您的 .settings 文件中的值自动创建。
  • 如果您调用 Properties.Default.Settings.Reset()yourapplication.exe.config 中的值将用于覆盖用户保存的值。
  • 添加新设置需要重新编译和重新发布。
  • 克服更新和分发的痛苦,你可以考虑ClickOnce。