应用程序移动时,UserSettings丢失了 - strongname

问题描述 投票:0回答:1

在我的公司中,用户正在从网络驱动器打开应用程序。要更新(覆盖)这些应用程序,每个用户都必须关闭应用程序。

为了避免这种情况,我创建了一个通过foldername找到最新版本的应用程序。例如:

Folder: 1.0
Folder: 1.0.1
Folder: 1.0.2
Folder: 1.2
Folder: 2.0

AppLauncher.exe

如果我单击AppLauncher.exe,则会启动文件夹2.0中的应用程序。问题是UserSettings总是在新版本上丢失,因为应用程序位于另一个文件路径(versionfolder)上。

在这个thread中,提到的解决方案是强大的应用程序名称。我不能这样,因为签署我的应用程序意味着我必须签署所有其他程序集。这在我的情况下是不可行的。

还有其他解决方案吗?

c# wpf settings
1个回答
-1
投票

看看ApplicationSettingsBase.Upgrade

此方法将先前版本设置与当前设置(在内存中)合并。您可能希望保存结果设置。

我在program.cs中有这个代码:

private static void Main(string[] args) {
        Properties.Settings.Default.Upgrade();
        Properties.Settings.Default.UpgradeRequired = false;
        Properties.Settings.Default.Save();
        //Other stuff
}
© www.soinside.com 2019 - 2024. All rights reserved.