我正在编写一个既有CLI又有GUI的应用程序。
我阅读了大多数关于此问题的问题和文章,并发现这个问题非常有用:
我的最终代码如下:
if (args.Length > 0)
{
//console code
}
else
{
FreeConsole();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form());
}
双击运行.exe、调试或带参数从控制台运行均可正常工作。
然而,如果在控制台没有带参数的情况下运行,GUI会打开,这正是我想要的,但控制台会停留在等待GUI关闭的状态。
这种GUI和控制台的行为不符合惯例。通常控制台启动GUI后就不会等待其退出,而是等待新命令。
是否有办法避免这种情况发生?