电话咨询
18600005972

星驿付POS机全国24小时客服热线电话

星驿付POS机全国24小时客服热线电话

商品详情

性能特点

技术参数

星驿付POS机全国24小时客服热线电话
星驿付POS机,星驿付POS机售后,星驿付POS机售后电话
星驿付
息本身的信息,比如是否从消息队列中移出。 
我们先在钩子函数中实现自定义的功能,然后调用函数 CallNextHookEx.把钩子信息传递给钩子链的下一个钩子函数。CallNextHookEx.的原型如下: 
LRESULT CallNextHookEx( HHOOK hhk, int nCode, WPARAM wParam, LPARAM lParam ) 
参数 hhk是钩子句柄。nCode、wParam和lParam 是钩子函数。 
当然也可以通过直接返回TRUE来丢弃该消息,就阻止了该消息的传递。 
2.安装钩子 
  在程序初始化的时候,调用函数SetWindowsHookEx安装钩子。其函数原型为: 
HHOOK SetWindowsHookEx( int idHook,HOOKPROC lpfn, INSTANCE hMod,DWORD dwThreadId ) 
参数idHook表示钩子类型,它是和钩子函数类型一一对应的。比如,WH_KEYBOARD表示安装的是键盘钩子,WH_MOUSE表示是鼠标钩子等等。 
  Lpfn是钩子函数的地址。 
  HMod是钩子函数所在的实例的句柄。对于线程钩子,该参数为NULL;对于系统钩子,该参数为钩子函数所在的DLL句柄。 
   dwThreadId 指定钩子所监视的线程的线程号。对于全局钩子,该参数为NULL。 
  SetWindowsHookEx返回所安装的钩子句柄。 
  3.卸载钩子 
   当不再使用钩子时,必须及时卸载。简单地调用函数 BOOL UnhookWindowsHookEx( HHOOK hhk)即可。 
   
值得注意的是线程钩子和系统钩子的钩子函数的位置有很大的差别。线程钩子一般在当前线程或者当前线程派生的线程内,而系统钩子必须放在独立的动态链接库中,实现起来要麻烦一些。 

分享到