如何显示/隐藏C#控制台应用程序的控制台窗口?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (24)

我搜索了解如何隐藏自己的控制台窗口的信息。令人惊讶的是,我能找到的唯一解决方案是通过标题FindWindow()找到控制台窗口黑客解决方案。我深入了解Windows API,发现有更好更简单的方法,所以我想将它发布到这里供其他人查找。

你如何隐藏(并显示)与我自己的C#控制台应用程序相关的控制台窗口?

提问于
用户回答回答于

以下是如何:

using System.Runtime.InteropServices;

[DllImport("kernel32.dll")]
static extern IntPtr GetConsoleWindow();

[DllImport("user32.dll")]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);

const int SW_HIDE = 0;
const int SW_SHOW = 5;

var handle = GetConsoleWindow();

// Hide
ShowWindow(handle, SW_HIDE);

// Show
ShowWindow(handle, SW_SHOW);
用户回答回答于

只要到应用程序的属性和更改输出类型控制台应用程序Windows应用程序

扫码关注云+社区