2017-12-08 12 views
0

私はキーボードエミュレーションとして機能するバーコードスキャナを扱っています。 カスタム見出し文字(パイプ)でバーコードラベルを印刷します。 私のメインフォームでは、キー押下イベントを聞いて、カスタムヘッダー文字が表示されるとすぐにスキャンを受け取り、自分のものよりも始めます。最小化したときのバーコードスキャンの取得

このメソッドは、アプリケーションのフォーカスが合っていても動作しますが、アプリケーションが最小化または非フォーカスの場合は何もできません。

キーボードのホットキーを設定しようとしました。それは動作します:私のアプリケーションは、最初の文字に焦点を当てますが、スキャナから非常に速く吐き出された後続の文字をキャプチャするのに十分速くはありません。

アプリケーションでこのキーストロークをキャプチャする方法については、どのような考え方がありますか? 明らかに見出しのchar idが検出された場合、シーケンスがvbcrで完了するか、タイムアウトに達するまで、後続の文字を抑制する必要があります。スキャナは二

+0

私は、これを行うには[低レベルのキーボードフック](https://github.com/gmamaladze/globalmousekeyhook)を使う必要があると思います。 –

答えて

0

未満の第十に15文字のシーケンスを吐く

注これは、Windowsは、唯一のアクティブなアプリケーションがキーボード入力を処理するどのように動作するかです。したがって、アプリケーションが最小化されると、キーボード入力を受信または処理しません。

ブラッドリーウフナーがコメントしたように、グローバルキーボードハンドラが必要です。私はこれを過去に使用しましたが、これはかなりうまく機能します。基本的に、最小限に抑えながらキーボード入力を処理するシステム全体のリスナーです。

関連する問題