我正在运行C++控制台应用程序,
在一段时间内
我想最小化运行我的应用程序的窗口。
例如我从cmd启动myApp.exe。然后在新窗口中启动。
那么可以最小化运行应用程序的窗口的库是什么。
应用程序没有任何GUI
最佳答案
我想您的应用程序正在Windows上运行(这不能跨不同的操作系统移植)。
首先,您需要使用GetConsoleWindow()函数来获取“控制台”窗口的句柄,然后可以根据需要使用ShowWindow()对其进行隐藏/显示。不要忘记包括windows.h
:
ShowWindow(GetConsoleWindow(), SW_MINIMIZE);
可以使用
SW_MINIMIZE
完全隐藏它(而不是SW_HIDE
)(但在应用程序刚启动时它将闪烁一次)。请注意,如果您可以控制进程的创建,则可以将其创建为
DETACHED_PROCESS
:分离的控制台应用程序没有控制台窗口。 CreateProcess()
函数还有您可能感兴趣的其他解决方法(例如,您可以创建一个子进程以输出...)更新:作为Patrick's answer的后续工作,您可以将子系统从Console更改为Windows,然后,如果需要写入控制台,请使用AllocConsole创建一个新的子系统:
if (AllocConsole()) {
printf("Now I can print to console...\n");
FreeConsole();
}
关于c++ - 如何最小化控制台窗口?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23514897/