近幾天在編寫程序時,無意中發現個win7比較惡的問題
程序基於mfc的對話框應用程序,並且新建了一個窗口,在Oninitdialog中,用DoModal()方法彈出這個窗口
本來這個窗口是用作登錄框使用,但是在w7的任務欄中的預覽窗裏,如果點擊關閉窗口
,奇怪的問題就來了,居然直接退掉了我的DoModal窗口
沒辦法,開spy++最終,最終發現是發送了SC_CLOSE消息
BOOL CiMsnDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加專用代碼和/或調用基類
if (pMsg->wParam == SC_CLOSE)
return TRUE;
return CDialog::PreTranslateMessage(pMsg);
}
至此,就不怕登錄框被w7關閉而顯示後面的主窗口了