System.Environment.Exit(0) 不退出程序
System.Environment.Exit(0) does not exit program
我在 Visual Studio 2013 年有一个控制台应用程序。
.NET 4.5
我希望程序在完成某项任务后退出。所以,我用
System.Environment.Exit(0);
但它不会退出。它只显示在控制台上:
按任意键继续。
如何退出程序?
提前致谢。
这里我检查目录是否为空,然后退出程序,我也试过把System.Environment.Exit(0);在主函数中,但它什么也没做。
if (Directory.GetFiles(@"Q:\").Length == 0)
{
System.Environment.Exit(0);
}
退出控制台应用程序最优雅的方式是从 Main
方法 return。
只需如下声明您的主要方法:
public static int Main(string[] args)
你可以使用
return x;
使用给定的 return 代码退出应用程序。
尝试Application.Current.Shutdown()
Press any key to continue
就像上面已经说过的评论一样,这听起来很像您的 IDE(大概是 Visual Studio)在进程终止后打印出来的内容。在我的机器上,当我 运行 一个没有附加调试器的控制台应用程序时,我收到这条消息,例如通过使用 Ctrl+F5 启动它。一旦我按下一个键,Visual Studio 生成的控制台 window 就会关闭。这是预期的行为。
尝试 运行在你的程序中附加调试器,例如按 F5。或者从命令提示符启动程序,而不是从 IDE 启动它。那时不应显示该消息。
另请注意,如果您有一个多线程程序,并且有非后台线程 运行ning,即使主线程已终止,这些线程也可以使进程保持活动状态。
我在 Visual Studio 2013 年有一个控制台应用程序。 .NET 4.5 我希望程序在完成某项任务后退出。所以,我用 System.Environment.Exit(0); 但它不会退出。它只显示在控制台上: 按任意键继续。
如何退出程序? 提前致谢。
这里我检查目录是否为空,然后退出程序,我也试过把System.Environment.Exit(0);在主函数中,但它什么也没做。
if (Directory.GetFiles(@"Q:\").Length == 0)
{
System.Environment.Exit(0);
}
退出控制台应用程序最优雅的方式是从 Main
方法 return。
只需如下声明您的主要方法:
public static int Main(string[] args)
你可以使用
return x;
使用给定的 return 代码退出应用程序。
尝试Application.Current.Shutdown()
Press any key to continue
就像上面已经说过的评论一样,这听起来很像您的 IDE(大概是 Visual Studio)在进程终止后打印出来的内容。在我的机器上,当我 运行 一个没有附加调试器的控制台应用程序时,我收到这条消息,例如通过使用 Ctrl+F5 启动它。一旦我按下一个键,Visual Studio 生成的控制台 window 就会关闭。这是预期的行为。
尝试 运行在你的程序中附加调试器,例如按 F5。或者从命令提示符启动程序,而不是从 IDE 启动它。那时不应显示该消息。
另请注意,如果您有一个多线程程序,并且有非后台线程 运行ning,即使主线程已终止,这些线程也可以使进程保持活动状态。