我有一个用C++编写的Windows控制台应用程序,我想隐藏/删除控制台窗口的完整标题栏,包括关闭、最小/最大控件等。我搜索了很多但还没有找到任何有用的东西。我使用GetConsoleWindow查询控制台HWND,并尝试通过删除WS_CAPTION标志使用SetWindowLong更改控制台窗口样式,但这似乎根本没有效果:HWNDhwnd=GetConsoleWindow();LONGstyle=GetWindowLong(hwnd,GWL_STYLE);style&=~(WS_BORDER|WS_CAPTION|WS_THICKFRAME);SetWindowLong(hwnd,G
除了主Win32窗口之外,我还使用“AllocConsole()`打开了一个控制台窗口。控制台窗口在主窗口之前打开。当我关闭主窗口并且程序从主函数返回时,控制台保持打开状态(进程也是如此)。它实际上卡在ntdll中的某处,正如调试器在暂停VisualStudio2012程序时显示的那样。通过单击X按钮关闭它会退出进程,但使用FreeConsole()关闭它不会,进程仍然在无窗口的情况下工作。CloseWindow(GetConsoleWindow())不会关闭它,它会将它最小化(!?!)。PostMessage(GetConsoleWindow(),WM_QUIT,0,0)关闭窗口,但
#include已经添加了,那么为什么GCC-mingw32编译器报告'GetConsoleWindow'wasnotdeclaredinthisscope?这是我的代码:#include#include#includeusingnamespacestd;#definePI3.14intmain(){//GetaconsolehandleHWNDmyconsole=GetConsoleWindow();//GetahandletodevicecontextHDCmydc=GetDC(myconsole);intpixel=0;//ChooseanycolorCOLORREFCOLOR=