-
-
[原创]我写的一个查看MFC消息工具
-
发表于:
2013-2-15 16:48
9489
-
很多年前已经有人写出来了MFCSPY 我发现少个静态release支持 所以我重写了下
大致思路:
使用dll钩子获取被spy程序的MFC窗口类,然后获得消息映射表,遍历即可
有几个注意地方:
(1)dll需要用mfc dll来写,获取消息映射表MFC现成有GetMessageMap()虚函数,直接可以拿来用,
因为GetMessageMap()是保护函数,所以共有继承CWnd,类里调用GetMessageMap()即可
(静态release版本需要特殊处理下 CWnd虚表中GetMessageMap()的偏移不是0x30而是0x28)
(2)获取当前运行程序的编译方式,这点我没想到方法,知道的麻烦指教下,我只用了
if (GetModuleHandle("mfc42d.dll") != NULL)
{
return MFC42D;
}
if (GetModuleHandle("mfc42.dll") != NULL)
{
return MFC42;
}
return STATIC;
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!