mfc的动态库dll无法响应PreTranslateMessage虚函数的原因

具体的原因和做法可以参考这一篇博客

MFC DLL如何响应PreTranslateMessage消息

需要注意的是,钩子函数是在整个dll的app进入时统一设置的。因此,在每个具体的对话框类中响应PreTranslateMessage函数时需要注意消息的窗口是不是当前的窗口,即在该函数里面需要做如下判断

BOOL MyDlg::PreTranslateMessage(MSG *pMsg)
{
if (pMsg->hwnd != GetSafeHwnd())
{
return FALSE;
}

 

posted @ 2021-01-30 22:39  李建业  阅读(355)  评论(0编辑  收藏  举报