如何隐藏win32应用程序窗口?

Bri*_*nan 6 c++ winapi mfc

我想通过传入一个参数以静默模式运行应用程序,否则我将显示该窗口.

Swi*_*age 11

ShowWindow(... SW_HIDE ...) 不起作用?

这里的最佳做法是首先不创建窗口.没有什么可以强迫你在InitInstance中实际创建一个窗口.虽然如果你正在使用MFC,很可能你的应用程序/域/业务逻辑很多,紧密耦合到那些MFC消息处理程序等等.在这种情况下,窗口将需要存在.

  • 我决定咬紧牙关并移动大量的代码.当/ silent作为参数输入时,我最终没有创建窗口.谢谢你的动力! (2认同)

Gre*_*jan 6

如果你有一个CWnd基于MFC 的显示器,那么CWnd::ShowWindow(SW_HIDE);
如果你只使用win32那么ShowWindow(hWnd, SW_HIDE);

人们根据你的目标做的其他事情

  • 使窗户非常小
  • 将窗口移出可见桌面区域