如何在.NET中自动重启(重启)控制台应用程序?
我知道表单应用程序有这样的东西:
Application.Restart();
但这对于控制台来说是不可能的。
另外,注意: 问题是,我无法启动同一个应用程序的两个实例:)
答案 0 :(得分:0)
您可以为您的应用程序创建一个新进程(请参阅Process类),启动它,然后立即关闭当前应用程序。
答案 1 :(得分:0)
好吧,你可以启动一个程序,只需在旧实例退出后启动程序的新实例。
答案 2 :(得分:0)
您可以创建一个启动器应用程序,它将等待几秒钟,然后启动真正的控制台应用程序。然后,每当您需要重新启动应用程序时 - 运行启动器并退出。
可能还有其他更漂亮的方法,但你必须更详细地解释这部分问题:“我无法启动同一个应用程序的两个实例”。
答案 3 :(得分:0)
当重启条件为真时,你可以在Main方法中放入一个循环:
static void Main(string[] args)
{
do
{
Main2(args);
//Some cleaning may be...
}while(someCondition)
}
private static void Main2(string[] args)
{
....
}
答案 4 :(得分:0)
您可以尝试创建批处理文件来运行控制台应用程序,然后尝试运行批处理文件(如果它当前没有运行)。
答案 5 :(得分:0)
我可能错了,但是单实例的.NET控制台应用程序似乎是一个设计缺陷。这对我来说听起来更像是Windows服务。您确定控制台应用程序是正确的,并且您不能允许多个实例吗?