2

我正在寻找与 Application.Restart() 等效的控制台应用程序,但似乎找不到执行此操作的方法。

其他人建议当我需要重新启动时,只需使用 Args 调用我的 Sub Main。但是,我需要物理重新启动应用程序的功能的原因是因为我要做的第一件事是检查更新并安装它们(如果有可用的话)。

更新技术本身完美运行,系统会安装新的更新,但更改要等到下次应用程序明显运行时才会生效。

由于该应用程序是作为计划任务从批处理文件运行的,因此我发布的任何更新都不会在两周内生效!

我在 Windows 窗体应用程序中遇到了同样的问题,但是调用 Application.Restart 的能力允许立即进行更改。创建控制台应用程序时可以实现相同的功能吗?

4

1 回答 1

1

2 我能想到的可能性。

第一个启动应用程序的另一个实例并使用类似的方法关闭当前实例

System.Diagnostics.Process.Start(ProcessStartInfo startInfo)

Environment.Exit(int exitCode)

其次,如果由于某些原因无法同时运行 2 个实例,您可以创建另一个由批处理启动的应用程序。让它运行您的应用程序,并让它在更新过程完成时获取信息,以便它可以首先关闭当前应用程序,然后运行另一个

于 2012-09-28T13:42:20.497 回答