【发布时间】:2014-09-03 21:11:07
【问题描述】:
我有一个使用 ClickOnce 部署的应用程序。我正在使用here 提供的默认InstallUpdateUpdateSyncWithInfo() 方法。我做了两个改变;当我从静态类中调用它时,我将方法设为 public 和 static。我知道不好的做法。这是一些懒惰的代码,只是为了尝试 ClickOnce。
应用程序每次更新时都会加载两个实例,旧的和新的。
除此之外,尽管我在 app.xaml.cs 中像这样调用该方法:
public partial class App : Application
{
private void Application_Startup(object sender, StartupEventArgs e)
{
MainWindow window = new MainWindow();
CheckForUpdates.InstallUpdateSyncWithInfo();
window.Show();
}
}
我想如果我在检查更新后调用Window.Show(),它会在旧版本加载之前调用InstallUpdateUpdateSyncWithInfo() 中的Application.Restart() 方法,但事实并非如此。
有谁知道在应用程序更新后如何防止我的应用程序的两个实例加载?
标题中有another post on Stack Overflow,我认为可以直接解决这个问题,但我没有看到发布者如何修改他的代码以防止加载两个实例。
【问题讨论】: