在网上搜到这篇文章,按足了操作步骤,没有完全达到预期的效果,而且没有释放钩子。
经过多次试验,对于在VC里创建“标准静态链接MFC DLL”或者“标准动态链接MFCDLL”,都只能够在调用DLL的程序的窗口发送消息,钩子才能钩到消息。否则,在调用程序以外的窗口发送消息,钩子就钩不到消息。要钩子能够钩到所有窗口发送的消息,那就得创建“扩展MFC DLL”。
以上仅为本人的测试结果,至于对不对、为什么,我也还搞不懂,欢迎大家讨论,给我个答案。
补充说明:我创建“扩展MFC DLL”,导出的是类接口;非“扩展MFC DLL”导出的函数接