System.Environment.Exit(0)不退出程序

本文关键字:退出程序 Environment Exit System | 更新日期: 2023-09-27 18:16:34

我在Visual Studio 2013上有一个控制台应用程序。net 4.5我希望程序在完成某项任务后退出。所以,我使用System.Environment.Exit (0);但它不会退出。它只显示在控制台上:按任意键继续。

如何退出程序?提前谢谢你。

这里我检查目录是否为空,然后退出程序,我也试着把System.Environment.Exit(0);在main函数中,但是它什么也没做。

    if (Directory.GetFiles(@"Q:'").Length == 0)
    {
        System.Environment.Exit(0);
    }

System.Environment.Exit(0)不退出程序

Press any key to continue

就像上面已经说过的注释一样,这听起来很像您的IDE(可能是Visual Studio)在进程终止后将打印出来的内容。在我的机器上,当我运行控制台应用程序而不将调试器附加到它时,我得到此消息,例如通过Ctrl+F5启动它。一旦我按下一个键,由Visual Studio生成的控制台窗口就会关闭。这是预期的行为。

尝试在附加调试器的情况下运行程序,例如按F5。或者从命令提示符启动程序,而不是从IDE启动程序。此时不应显示该消息

还要注意,如果你有一个多线程程序,并且有非后台线程在运行,即使主线程已经终止,这些线程也可以使进程保持活跃。

退出控制台应用程序的最优雅的方式是从Main方法返回。

简单地声明你的主方法如下:

public static int Main(string[] args)

,你可以使用

return x;
使用给定的返回码退出应用程序。

try Application.Current.Shutdown()