想用VB写一个键盘测试程序,但是遇到一个头痛的问题,就是当按到Win时就会弹出Windows的"开始"菜单,这样以来程序的窗口就失去焦点,能不能屏蔽掉Win键按了以后弹出"开始"的动作,但又不影响测试按键.请高人指点,谢谢!

解决方案 »

  1.   

    键盘测试,你用的是全局键盘HOOK吧?那直接遇到WIN键后吃了不就行了.反正你的目的是测试这个键按下后有没有作用而已.参考:http://www.m5home.com/bbs/dispbbs.asp?BoardID=28&ID=517屏蔽掉WIN2000及以上系统中的WIN键的代码
      

  2.   

    谢谢老马,我用的方法是根据Keycode进行判断,比如说a键的Keycode为65,那么程序去判断按下键的Keycode是不是65进行测试.
    用这种方法如果屏蔽Win键?
      

  3.   

    我认为你进行按键检测还是最好使用HOOK来完成.理由就是你现在遇到的问题---------既要测试按键,又要让某些按键的功能暂时无效.因为HOOK的话,可以如我上面所发的例子那样,非常方便地决定一个按键的消息是否下发,因此控制了其实际功能的发挥.你使用KEYCODE判断,和用HOOK判断,电路不会有什么大改变的,试一下吧.