我在activex控件里使用这个函数,如下setwindowshookex(WH_CALLWNDPROC,(HOOKPROC)myhook,NULL,0)结果无法安装钩子,我只是想安装一个局部钩子,把第四个参数改为getwindowthreadprocessid函数得到的参数也不行,难道只能写在dll里吗?返回的错误号是1428

解决方案 »

  1.   

    正确,必须编写dll,因为钩子需要和被钩宿主在同一进程内。
      

  2.   

    但是我在寒假里看得远程控制的一本书,后面两个参数是NULL和0,我还试了一下,结果在其它程序里的按键也能记录到啊,activeX是在访问网页时要安装到客户机的,加载DLL是不是有点麻烦?
      

  3.   

    微软写的api,人家明确说了没这个功能,不是麻烦不麻烦的问题。你说编程序非要电脑啊,电脑太麻烦,电灯行不行,人家没这个功能……
      

  4.   

    最后两个参数传App.hInstance, App.ThreadID