如何将hook捕获的消息显示在调用它的主程序的一个文本框中? (100分)

  • 主题发起人 主题发起人 未来107
  • 开始时间 开始时间

未来107

Unregistered / Unconfirmed
GUEST, unregistred user!
各位朋友:
; ; 我安装了一个鼠标钩子,它能够捕获任意窗口的双击消息,现在的问题是:
我想让这个鼠标钩子一捕获双击消息就立即被调用它的主程序所知,比如在主程序
的一个edit框中立即显示‘双击‘。这如何实现?望不吝赐教!
 
1 可以通过内存映象文件
2 可以用消息
 
能讲具体些吗?
; 主程序句柄是什么?
; 向主程序发送什么消息等?
 
Sendmessage();
内存映射、Dll都可以:)
 
朋友们,望不吝赐教
 
能把你这个钩子例子发给我看看
我写的钩子总有很多异常

cbychen@263.net
谢谢
 
可以用内存镜像保存主窗体的句柄,自定义一个消息,DLL里向主窗体发自定义消息
(我就是这样做的,没有问题)
 
在写HOOK DLL时,可以来个全局变量存放调用它的主窗口句柄,在主程序中调用SetWindowsHookEx
之前赋值给这个变理,然后在HOOK的回调函数中,用SendMessage(),发送消息到主窗口.
 
dll中的全局变量好像不管用,要用内存镜像才OK
 
HOOK的句柄就是一个全局变量
 
我的HOOK句柄也是保存在内存镜像中的,不然在我这里会出问题
 
my system:win2k+sp2,it does the work
 
“it does not work”??是什么?内存镜像?
不会吧,我在WIN2K+SP2,XP里都试过,可以用
 
是it does the work!
我在我的系统下用全局变量可行,你用了多线程?
 
嘻嘻,不好意思,眼神不好。。。。。。。
我没用多线程
你的全局变量如何定义?我是在DLL里前面直接VAR,呵呵,算不算全局?
如果算,那么那个值时常会变,每个新进程调用这个DLL,“全局变量”都会重新初始化
 
应该用内存印象。谢谢了
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
633
import
I
后退
顶部