我希望能够像wget -b
一样将我的程序与控制台分离。代码片段可能如下:
static void Main(string[] args)
{
var settings = new Settings(args);
if (settings.Background)
{
/*Tell the user what's going on.*/
System.Console.WriteLine("Detatching from console. The program will still be running.");
System.Console.Out.Close();
}
/*do work then exit.*/
}
但是System.Console.Out.Close();
并不能实现正确的效果。
需要澄清的是,所谓的“正确的效果”是,在控制台中运行此程序时,提示符应该重新出现。或者,在从explorer.exe
运行此程序时,控制台窗口应该关闭。
如果我表达不清楚,请告诉我。
start
。 - James Michael Harewget -b
并获得我想要的行为。 我不希望程序从一开始就是无头的。 例如,我希望程序先向控制台打印一行,然后分离,使用户再次获得命令解释器。 - lmat - Reinstate Monica