程序A是向IE窗口模拟发送键盘消息的(非人工按键)。我想做个钩子记录下程序A发了什么消息给IE窗口,要用什么类型的钩子?

解决方案 »

  1.   

    可以用GetKeyState看接收到这个键盘消息时相应键是否被按下,如果没有则是虚拟的.
      

  2.   

    hook 程序A SendMessageIAT Hook
      

  3.   

    谢谢各位,现在明确程序A是模拟发送键盘消息,有可能用SendMessage或PostMessage,SendMessage 可以用 WH_CALLWNDPROC 钩子类型拦截,但好像不能拦截 PostMessage。
      

  4.   

    hHook=SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)KeyboardProc,NULL,AfxGetThread()->m_nThreadID);