使用AllocConsole()和FreeConsole()
代码简单,做个备忘,如下:
[DllImport("kernel32.dll")]
public static extern Boolean AllocConsole();
[DllImport("kernel32.dll")]
public static extern Boolean FreeConsole();
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
#if DEBUG
AllocConsole();
#endif
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
FreeConsole();
}
使用AllocConsole()开启控制台窗口后,就可以直接用Console.Write()输出log到窗口了,还可以定制颜色
public Form1()
{
InitializeComponent();
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("Error:\t");
Console.ForegroundColor = ConsoleColor.Gray;
Console.WriteLine("this is an error log");
Console.ForegroundColor = ConsoleColor.Yellow;
Console.Write("Warn:\t");
Console.ForegroundColor = ConsoleColor.Gray;
Console.WriteLine("this is a warn log");
Console.ForegroundColor = ConsoleColor.Green;
Console.Write("Normal:\t");
Console.ForegroundColor = ConsoleColor.Gray;
Console.WriteLine("this is a normal log");
}
看图:
相当方便吧