0

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

我怎样才能退出程序?提前致谢。

这里我检查目录是否为空,然后退出程序,我也尝试输入 System.Environment.Exit(0); 在主要功能中,但它什么也没做。

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

3 回答 3

2
Press any key to continue

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

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

另请注意,如果您有一个多线程程序,并且有非后台线程正在运行,即使主线程已经终止,这些线程也可以保持进程处于活动状态。

于 2016-11-07T09:54:13.147 回答
0

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

只需如下声明您的 main 方法:

public static int Main(string[] args)

你可以使用

return x;

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

于 2016-11-07T09:44:30.340 回答
0

尝试Application.Current.Shutdown()

于 2016-11-07T09:52:50.830 回答