1

我已经阅读了很多关于保存设置的帖子,但没有一个真正深入到我想要做的事情的核心。我为第 3 方应用程序创建了一个配置应用程序,其设置需要从一个站点更改为另一个站点。我正在尝试找到一种方法将这些设置存储在可执行文件中,而无需将硬编码设置编译到其中。如果最终用户需要更改程序中的名称或 IP 地址,这将允许最终用户编辑设置。

我需要将可执行文件保留为只能下载 EXE 的应用程序,我能找到的所有解决方案都包含无法下载的外部文件。这甚至可能吗?

4

2 回答 2

1

我不相信.Net 会让你完全按照你想要的方式去做。运行时,.Exe 将被锁定以进行写访问。即使不是这样,.Net 运行时也会在即时编译之前验证 IL 签名,我希望这会破坏验证。

这是可悲的。我经常希望有同样的能力。让我将我的数据附加到 .exe 的末尾!但这不是 Windows 支持的东西。

相反,让程序在第一次运行时创建一个设置文件。该文件可以存在于 %App_User% 特殊文件夹中,因此如果用户下载 .exe 并将其保存到他们的桌面,那里不会有无法解释的文件。

于 2013-09-23T20:26:26.757 回答
0

使用注册表设置。

这不需要您包含另一个文件,它会保存每个用户的设置。

但是,您必须创建应用程序的一部分来更改配置。用户不应该直接编辑注册表,但您应该在应用程序中提供一个界面,允许他们查看/编辑更改。

于 2013-09-23T20:06:28.600 回答