'Application.Restart'无法在ClickOnce部署的应用程序中运行

Chr*_*mes 10 c# clickonce updating restart

可能重复:
为什么Application.Restart()不可靠?

直接从MSDN中删除了代码.这会更新我的应用程序,但Restart()不起作用.应用程序关闭,但不会重新启动.

我添加了一个MenuItemForm验证它的Restart()工作原理:

private void restartToolStripMenuItem_Click(object sender, EventArgs e)
{
    Application.Restart();
}
Run Code Online (Sandbox Code Playgroud)

这将重新启动应用程序(当然,它不执行任何更新并且是用户启动的,因此它是相当无用的).

我没有其他任何与此应用程序相关的事情.关闭时没有表单的事件处理程序,没有.这是最基本的Windows窗体应用程序,我可以建立(它只是显示一个资源JPEG中的ImagePanel).

为什么Restart()不在这里工作?

Gre*_*hus 5

您的应用程序是Windows Forms还是WPF?因为Application.Restart仅存在于Windows窗体Application对象(System.Windows.Forms.Application)中,并且在WPF Application(System.Windows.Applications)下运行的应用程序不支持.您仍然可以调用它,但由于应用程序上下文不同,它不起作用.


Jho*_*re- -1

尝试提出一个新的流程,也许可以解决这个问题:

Process.Start(Application.ExecutablePath);
Run Code Online (Sandbox Code Playgroud)