我正在运行控制台应用程序,当最后一行文本写入控制台窗口时,我希望控制台窗口在5秒后自动关闭。
现在始终有“按任意键继续'的消息。有没有办法抑制此消息并在5秒后关闭窗口?
我尝试了return 0;
,System.Environment.Exit(1)
,但没有成功
非常感谢任何帮助。
static int Main(string[] args)
{
Console.WriteLine("This is the last message.");
Thread.Sleep(5000);
// System.Environment.Exit(1);
return 0;
}
答案 0 :(得分:2)
Press any key to continue
。每当您从IDE运行应用程序时,您必须期望任何输出正确吗?这是为此目的而给出的,以便用户可以看到生成的输出。无论您的项目模式是Debug
还是Release
,您都会收到此消息。如果您将在所有MSDN文档中看到(假设this),他们在代码示例中特别提到: -
// Keep the console open in debug mode.
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
因为当您使用Ctrl+F5
直接运行应用程序时,您会收到此消息“按任意键继续”但在调试时您将不会收到此消息。
如果您将从IDE
外部运行,即直接双击生成的.exe
文件,您将无法找到此消息,同时您也将实时运行此文件BAT文件或其他东西(显然你不会要求最终用户从Visual Studio IDE运行你的应用程序)然后你也不会得到这个消息。
只需使用您的代码(如下所述)并运行.exe
目录中的bin
文件,即可获得所需的结果。
static void Main(string[] args)
{
Console.WriteLine("Please enter something");
Thread.Sleep(5000);
}
因此,简而言之,这仅适用于 IDE 。
答案 1 :(得分:0)
编译应用程序并运行它应该自动关闭控制台(使用Windows命令提示符)。除非您打开命令提示符并从其中运行程序,否则这是不可能的。
您无法强制控制台自行关闭,您的程序只能在其中运行。