首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何防止应用程序的两个实例在使用ClickOnce更新后加载?

如何防止应用程序的两个实例在使用ClickOnce更新后加载?
EN

Stack Overflow用户
提问于 2014-09-03 21:11:07
回答 1查看 128关注 0票数 1

我有一个使用ClickOnce部署的应用程序。我正在使用默认的InstallUpdateUpdateSyncWithInfo()方法,提供了这里。不过,我做了两个更改;我使方法公开和静态,因为我是从一个静态类调用它的。我知道不好的做法。这是一些懒散的代码,只是为了试用ClickOnce。

每次应用程序更新时,都会加载两个实例,一个是旧的,另一个是新的。

除此之外,我在app.xaml.cs中调用的方法如下:

代码语言:javascript
运行
复制
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()方法,但事实并非如此。

有谁知道如何在应用程序更新后阻止应用程序的两个实例加载?

在标题中有一个堆栈溢出的另一篇文章,我认为它可以直接解决这个问题,但是我看不出海报是如何修改他的代码来防止加载两个实例的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-03 21:31:40

没有必要自己编写自动更新代码。首先,我将删除您的更新代码。

接下来,右键单击您的C#项目并选择Properties。然后转到Publish并单击Updates...。勾选复选框,以便应用程序检查更新,ClickOnce将处理其余内容。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25653722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档