5、1快乐,请问我想HOOK已知handle的回车事件,只能是定时检测键盘有没有敲回车?(100分)

  • 主题发起人 主题发起人 jxzqsun
  • 开始时间 开始时间
J

jxzqsun

Unregistered / Unconfirmed
GUEST, unregistred user!
请问我想HOOK已知handle的回车事件,只能是定时检测键盘有没有敲回车?<br>我能不能不用定时器,而是直接在那个程序回车事件发生后,我的程序就知道?<br><br>谢谢各位了!搞的好辛苦哦,呵呵,现在都凌晨3点了。5、1没地方去,人太多了,不如玩玩这个,上班了又没时间。
 
SetWindowsHookEx(WH_KEYBOARD,@KeyHookProc,hInstance,0);<br>
 
HOOK能拦截几乎所有的消息,你所说的HOOK定时检测回车事件是不存在的!!!!刘麻子给的是拦截键盘消息的HOOK!!!
 
我想你还未真正了解HOOK,HOOK是在事件发生后,消息发往程序时先程序截获消息的!!!
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2577410<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=2579778<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=2585391<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=2550845 &nbsp;
 
============直接把这部分拷贝到txt,然后改扩展名为dpr,之后编译得到dll<br>library DllP;<br>&nbsp; uses windows;<br><br>var<br>&nbsp; HookH:HHook; &nbsp; &nbsp;//钩子句柄<br>function keyhook(Code:Integer;wParam:WPARAM;lParam:LPARAM):LRESULT;stdcall;<br>begin<br>&nbsp; if wParam=vk_Space then //如果是空格<br>&nbsp; &nbsp; &nbsp; Result:=CallNextHookEx(HookH,code,Wparam,lParam)<br>&nbsp; else<br>&nbsp; &nbsp; &nbsp; Result:=1; //屏蔽<br>end;<br><br>procedure HookOn;<br>begin<br>&nbsp; HooKH:=SetWindowsHookEx(WH_KEYBOARD,@keyHook,HInstance,0);<br>end;<br><br>procedure HookOff;<br>begin<br>&nbsp; UnHookWindowsHookEx(HookH);<br>end;<br><br>exports<br><br>&nbsp; HookOn,HookOff;<br><br>begin<br>end.<br>====然后在我们的程序中先声明 &nbsp;然后调用 hookon 挂钩就可以了 想要钩子失效就调用hookoff<br>procedure &nbsp;HookOn ; stdcall; external '您那边编译得到的dll文件名.dll';<br>procedure HookOff ; stdcall; external '您那边编译得到的dll文件名.dll'; <br><br>&nbsp; &nbsp; hookon; //挂键盘钩子 &nbsp; &nbsp;<br>
 
请看我做的一个示范 &nbsp;: &nbsp;http://free.efile.com.cn/liumazi/dfw.rar
 
下载不了
 
&nbsp; &nbsp; &nbsp; 2ccc 昨天晚上 在弄服务器 , 现在可以了。
 
谢谢刘大师了,呵呵。
 
晕 我是初学 以后互相交流 :)
 
后退
顶部