解决VS2008之后平台(如VS2012/VS2013/VS2015)调试模式下不显示主界面窗口的问题

问题描述:win10操作系统下,VS2008工程调试模式下正常显示主界面窗口,使用VS2012/VS2013/VS2015环境打开VS2008工程,调试模式下应用程序转为后台进程,不显示主界面窗口;另外,非调试模式下单独执行exe正常显示主界面窗口。

分析:

多文档视图程序中:xxx.cpp有如下语句:

m_nCmdShow |= SW_MAXIMIZE;
pMainFrame->ShowWindow(m_nCmdShow);
pMainFrame->UpdateWindow();

VS2008正常执行,但是之后环境(如VS2012/VS2013/VS2015) 执行存在问题。

对策:

使用SendMessage机制代替

pMainFrame->ShowWindow(m_nCmdShow);
pMainFrame->UpdateWindow();
SendMessage(pMainFrame->m_hWnd, WM_SYSCOMMAND, SC_MAXIMIZE, );
上一篇:深入js系列-类型(隐式强制转换)


下一篇:WPF:验证登录后关闭登录窗口,显示主窗口的解决方法