我想写个全局钩子对所有的键盘消息不响应
SetWindowsHookEx这个函数必须写在dll中吗?我想把这个函数写在调用dll的exe里面!不知道可以吗?
如果可以,可以把原代码给我写出来行么?
谢谢高手指教拉!

解决方案 »

  1.   

    钩子的回调函数必须写在DLL里面。
      

  2.   

    对所有的进程监控的时候,要DLL中/
    如果只是监视一个进程,可以写在这个进程中
      

  3.   

    SetWindowsHookEx可以写在exe里面的,回调函数写在dll里面
    我写了一个全局钩子对全部键盘消息都响应的,其实也是抄别人的(^_^)
    不过抄会了就是自己的了
      

  4.   

    注意,如果是全局钩子,SetWindowsHookEx最后一个参数必须为0
      

  5.   

    恩!
    那么怎么写啊!
    昨天写拉个把SetWindowsHookEx写到调用dll的文件里面既然出错误!
    这个是我dll文件
    hook.dll#include <windows.h>
    LRESULT CALLBACK KeyboardProc(
      int code,       // hook code
      WPARAM wParam,  // virtual-key code
      LPARAM lParam   // keystroke-message information
    )
    {
    if(VK_F12==wParam)
    {
    MessageBox(NULL,"我成功拉","外挂",0);

    }
    return 1;
    }hook.defEXPORTS
    LRESULT CALLBACK KeyboardProc
      

  6.   

    GetWindowThreadProcessId
    这个函数我认为是返回线程的id号!
    他们说是进程!我不知道到底是线程还是进程!请高手门告诉我下!
      

  7.   

    看看我写的一个小东东,用到了鼠标和键盘钩子,有代码,你去看看吧。http://www.xiaozhou.net/ReadNews.asp?NewsId=909