問題:
在線程中使用UpdateData(FALSE)來更新窗口的內容,結果在Debug版本下面就出現了Assert報錯.
解決方案:
UpdateData(FALSE)語句用SendMessage(WM_UPDATEDATA, FALSE)替代即可.
abc.h文件中:
#define WM_UPDATEDATA WM_USER + 5
LRESULT OnUpdateData(WPARAM wParam, LPARAM lParam);
abc.cpp文件中:
//函數映射 :
ON_MESSAGE(WM_UPDATEDATA, OnUpdateData)
//定義新函數:
LRESULT CProtectPage::OnUpdateData(WPARAM wParam, LPARAM lParam)
{
UpdateData(wParam);
return 0;
}
//傳消息給窗口:
SendMessage(WM_UPDATEDATA, FALSE)