发帖发帖 请新人观看 大侠指正!
今天说下WH_GETMESSAGE和WH_CALLWNDPROC这两个钩子的区别
首先
1.WH_GETMESSAGE专门勾的是通过postmessage发送到目标程序的消息。
2.WH_CALLWNDPROC则是勾的sendmessage发送到目标程序的消息。
3.postmessage 是将消息寄送到消息队列 而不管其是否返回,sendmessage则是将消息发送到目标程序并等待返回。
4.最重要一点 也是我犯错的地方,WH_GETMESSAGE中的lparam指向的是一个MSG结构体。
而WH_CALLWNDPROC中的lparam指向的则是CWPSTRUCT结构体! 如果再写回调函数的时候结构体弄错了 那可就什么消息都截获不到了 因为你要截获的消息根本就
没有存在在这个结构体中。
最后总结经常看看MSDN,发现细节问题。
最后我想问下有没有中文的MSDN啊 英文的看不懂!!!(其实就是翻成了中文有的我还是看不懂,不过我还是想要个中文的)。