別のアプリケーションでバーコード スキャンを検出するバックグラウンド vb プログラムを作成しています。特定の文字列が検出された場合、VB で keySend コマンドを使用して、実行中のアプリケーションに別の文字列を追加したいと思います。キープレスまたはキーダウンから文字列を読み取ることはできますが、バーコードスキャナーは読み取れません。
3378 次
2 に答える
1
というフォームにタイマー コントロールを配置します。Timer1
Private Declare Function GetAsyncKeyState Lib "User32" (ByVal vKey As KeyCodeConstants) As Long
Private barcode As String
Private Sub Timer1_Timer()
Dim keyResult As Integer
Dim chrKey As String
Dim i As Integer
For i = 2 To 90
keyResult = 0
keyResult = GetAsyncKeystate(i)
If keyResult = -32767 Then
chrKey = Chr(i)
barcode = barcode & chrKey
Exit For
End If
Next i
End Sub
これはキーロガーです。押されたすべてのキーを記録します。タイマー間隔をスキャナーの速度に設定して、キーストロークが重複しないようにします。
于 2013-03-15T04:44:05.590 に答える
0
私があなたを正しく理解していれば、あなたの問題は、アプリがコードをスキャンしたときを検出する方法ですか?
スキャンはどのように実行されますか、手動キーボード入力またはバーコード スキャナー デバイスの使用ですか?
デバイスを使用している場合は、すべてデバイスに依存します。私はほんの数台のデバイスで作業しましたが、何かをスキャンするたびに、バーコードからクリップボードにデータをコピーしました (CTRL + C を押してテキスト行をコピーしたかのように)。
したがって、クリップボードで特定の文字列を監視し、必要なことを実行するだけです。
于 2013-03-15T18:09:23.843 に答える