3

マシン (Linux/Windows) で実行されている Java で記述されたアプリケーションがあります。システム内の他のアプリケーションの使用中に中断しないように、このアプリケーションをバックグラウンド アプリケーションのように実行したいと考えています。USBポートに接続されたスキャンを使用してQRコードがスキャンされたときに、画面をポップアップしていくつかのボタンを表示したいと思います(選択に基づいていくつかのタスクを実行します)。このスキャンが発生すると、ポップアップ画面を開始する Java アプリケーションがシステム トレイで実行されます。

--編集--
キー リスナーを使用して、バーコード スキャンを識別し、スキャン内容に基づいてデータベースから情報を引き出しました。しかし、私のアプリケーションをスキャンしている間、開いていました。そのため、キーストローク/スキャンがキャッチされて処理されるように、AWT レベルでアクションリスナーをアタッチしました。しかし、現在のケースでは、ウィンドウをアクティブにすることはありません。そのため、アプリケーションがシステム トレイで最小化されている場合は、スキャンされた入力を内部的にキャプチャする必要があります。

4

2 に答える 2

3

私はあなたに開かれた唯一の道はシステム全体のキーボードイベントをキャプチャすることだと思います。Java用にそれを処理するライブラリがあります:jnativehook。しかし、どのイベントがHIDデバイスから具体的に発生しているのかをどのように検出するのか、私にはわかりません。

また 、アマチュアレベルのプロジェクトであるJavaHIDAPIもあります。このプロジェクトの「hello、world」テスト例は、私のマシンのIOExceptionで失敗しました。良い部分は、Windows用のネイティブCを含むすべてのコードがそこにあることです。

最後に、これは、WindowsでHIDと通信する方法に関する非常に優れたチュートリアルであることがわかりました。

于 2012-04-17T12:01:23.297 に答える
2

ヘッドレス モードが機能するかどうかを確認したり、ホストでVNCを起動したりできます。

于 2012-04-12T14:58:51.777 に答える