C# 程序不显示控制台。 C# 使用代码隐藏控制台。
文章目录
- 代码
- 效果
代码
class Program
{
// 导入kernel32.dll库中的AllocConsole函数
[DllImport("kernel32.dll")]
static extern bool AllocConsole();
// 导入kernel32.dll库中的FreeConsole函数
[DllImport("kernel32.dll")]
static extern bool FreeConsole();
public static void Main()
{
// 调用AllocConsole函数,显示控制台窗口
AllocConsole();
Console.WriteLine("控制台已显示");
// 输出提示信息
Console.WriteLine($"按下Esc可退出控制台界面!");
// 判断用户是否按下了Esc键,如果按下则调用FreeConsole函数隐藏控制台窗口
if(Console.ReadKey().Key == ConsoleKey.Escape)
FreeConsole();
// 循环输出倒计时信息,每隔1秒输出一次,共输出5次
for (int i = 5; i > 0; i--)
{
Trace.WriteLine($"主线程{i}秒后退出!");
Thread.Sleep(1000);
}
}
}
效果
按下ESC后,控制台被隐藏,在输出窗口有如下输入: