怎么判断键盘按下了这些键?【A+B+C】
刚刚逛csdn的时候见到有个软件能实现
http://community.csdn.net/Expert/TopicView1.asp?id=4089287看了网站介绍说 【A+B】!=【B+A】呢,晕~
我知道原理应该是用hook,但是具体不知道如何,请高人指教!

解决方案 »

  1.   

    以前我也试过,我记得键盘处理一次只能处理两个按键KOF97 PC版的大家都玩过吧,
    这么厉害的模拟器公司目前都没有实现“同时按下三个键”炸气的可能游戏中还得设置宏来实现
      

  2.   

    就用键盘钩子就可以了。处理WM_KEYDOWN和WM_KEYUP消息。就算是三个键也无所谓,因为你不可能做到同时按下三个键,无论怎样,都是有先后顺序的。你只需要定义三个BOOL变量bButtonADown,bButtonBDown,bButtonCDown然后在键盘钩子中捕获WM_KEYDOWN消息,判断如果是其中某一个键,那么就设置其变量为TRUE
    相反,截获WM_KEYUP消息,判断如果有其中的键的消息,表名此键松开,那么设置为FALSE判断三个键同时按下:if(bButtonADown&&bButtonBDown&&bButtonCDown)
    {
       ……
       ……
       //加入你的处理代码
    }