将设置保存到 exe

本文关键字:exe 保存 设置 | 更新日期: 2023-09-27 18:32:19

我有一个程序,我想将信息存储在字符串中。 我一直在使用Properties.Setting.Default.STRINGname来存储信息,这在我的 PC 上运行良好,我可以看到保存的字符串(当我转到应用程序中的设置时)。 但是当我将应用程序带到新PC时,它会丢失字符串。 有没有办法编辑此信息并将其保存在应用程序中? 所以基本上我需要能够将用户设置转换为应用程序设置,但在运行时之后。

var settings = Properties.Settings.Default;
        settings.H1 = textbox1.text;
        settings.H2 = textbox2.text;
        settings.Save();

将设置保存到 exe

MSDN明确表示:

应用程序

范围的设置是只读的只能在设计时或通过应用程序会话之间更改.config文件来更改。但是,可以在运行时编写用户范围的设置,就像更改任何属性值一样。新值在应用程序会话期间保持不变。可以通过调用 Save 方法在应用程序会话之间保留对设置所做的更改。

为此,应用程序设置将永远不适合您。但是,如果您使用的是用户范围的设置,它确实有效,但很快您将应用程序从一台计算机更改为另一台计算机(如您所愿),您将丢失设置,因为这是另一台计算机(另一台用户范围)...

有办法继续使用相同的设置,你可以做,至少2件事:

  • 使用.config文件保存设置(它是一个 XML 文件)
  • 使用服务来托管设置,您可以读取用户是否可以访问互联网

你不能做的是

  • 仅使用一个可执行文件,将设置从一台计算机保存到另一台计算机。

用户设置的编译方式与应用程序设置不同,因此在编译后无法转换。 为什么不使用应用程序设置进行编译?

您使用的代码应保存用户设置。建议用户设置将保存在用户的数据文件夹中。不在安装应用程序的配置文件中(例如程序文件)。这是通常的路径:

<Profile Directory>'<Company Name>'<App Name>_<Evidence Type>_<Evidence Hash>'<Version>'user.config

请参阅此链接以了解更多信息