问个方案
一个驱动程序,一个对话框程序。
有些时候驱动程序需要通知对话框程序做某些操作。
为了简化操作,我们就定义了一些按键消息,驱动程序使用keybd_event来触发这些按键事件,
然后对话框程序就接收WM_KEYDOWN消息并根据键码做响应的操作。
但是这样有一个问题,就是如果焦点不在对话框上的话,就接收不到消息。
为了解决这个问题,我把WM_KEYDOWN改成了热键WM_HOTKEY,并注册了系统热键。
但是现在的结果是,程序接收不到keybd_event发出来的消息。
模拟器上测试OK。在模拟器上使用另外一个对话框程序触发keybd_event消息也可以收到。
由于实际硬件没有键盘,所以也没有办法做确认。
我想问的是:
1 是否有人有这个经验,是不是这个方法不行?
2 有没有其他的(消息以外)方法。驱动主动通知应用程序做某些事情。
谢谢大家