我正在编写一个系统托盘应用程序,它监听 USB 条形码扫描仪并在读取匹配的条形码后启动一个互联网站点。(条形码扫描仪像键盘一样提供按键序列输入)。基于这篇文章Distinguishing Barcode Scanners from the Keyboard in WinForms。
我设法编写了这些功能:
该程序侦听所有 WM_IMPUT 消息,并“捕获”扫描的条形码,即使它在后台运行且未聚焦。
该程序知道是用户键入键盘还是条形码扫描仪扫描,并仅选择来自扫描仪的输入(但条形码被发送到前台窗口(即焦点)作为常规按键序列,因为扫描仪就像键盘一样)。
我唯一需要做的就是: 3. 如果输入来自条形码扫描仪 --> 阻止它被发送到任何其他应用程序或线程。(假设您正在写一封电子邮件,然后扫描 - 我不希望将条形码“输入”到您的电子邮件中)。
请帮助:是否可以阻止所有其他线程的“击键”?怎么做?
谢谢,哈扎尔