如何禁止键盘和鼠标消息
编号:QA000856
建立日期: 1999年4月23日 最后修改日期:1999年4月23日
所属类别:
Sbc:
Delphi
Win95/Win98
我用钩子函数截获键盘按键消息和鼠标移动消息,但无法禁止这些事件的发生。即例如VK-LWIN键按下后,WIN95/98马上弹出START菜单。我的程序要做到既可以收到该消息,又不让START菜单发生。
我想应该通过DDK来解决问题,现已DOWNLOAD了WIN98的DDK,且可以编译,但不知如何使用。DRV和VXD的资源函数如何应用?是否象DLL一样该问呢?望能请教,谢谢!!
回答:
你的键盘和鼠标钩子函数如果返回0,Windows就会把消息传递给其它程序,如果返回非零值,Windows就不会把消息传递给其它程序。不过,以我的经验如果禁止WM_MOUSEMOVE会有很大的副作用。
你当然也可以使用DDK编写设备驱动,不过象这样的驱动不可能是DRV的,只能是VXD或SYS的。一般调用设备驱动,是利用CreateFile打开设备,然后利用DeviceIoControl控制设备驱动。(VXD有多种调用方式,取决于你的设计。)Win95/98使用的VXD同DLL很不同。
此问题由李海回答。
| |
|
|
| |
|
|