当我使用NSIS部署C#Winforms应用程序时,我如何使用Properties.Settings



我已经使用Winforms编写了一个C#应用程序,并试图利用内置的Properties.Settings(用户范围(来记住程序启动之间的用户状态。当应用程序通过Visual Studio的内置Build>进行部署时发布,显然该文件已放入本地Appdata文件夹中。但是,我想使用NSIS来创建程序的可执行文件。我可以通过NSIS脚本将ProgramName.exe.config文件放入本地AppData中,但我的应用程序似乎无法从中读取。没有用户设置持续存在。

这可能吗?还是应该使用自己的方法(数据库或编写自己的设置xml(来存储用户设置?

好吧,我用NSIS完成了它。App.config文件具有名为"的属性;复制到输出目录";其被设置为"0";请勿复制";默认情况下。我在这里找到了这些信息:https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/

在@Jimi的帮助下,我找到了user.config文件的创建位置,添加了System.Configuration作为参考,然后使用获取路径

var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);

user.config文件不是在应用程序安装时创建的,而是第一次调用以下文件时创建的:

Properties.Settings.Default.Save();

在NSIS中,开发人员没有什么特别的事情要做。

最新更新