自动重新启动控制台应用程序



我正在寻找相当于Application.Restart()的控制台应用程序,但似乎找不到一种方法来做到这一点。

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

更新

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

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

我在Windows窗体应用程序上遇到了同样的问题,但是调用Application.T重新启动的能力允许立即进行更改。创建控制台应用程序时是否可以实现相同的目标?

我能想到的 2 种可能性。

首先启动应用程序的另一个实例,并使用类似

System.Diagnostics.Process.Start(ProcessStartInfo startInfo)

Environment.Exit(int exitCode)

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

最新更新