2

私は物理的なボタンを購入し、Arduino を使用して自分のコンピューターに接続し、USB シリアルを介して私が書いている C++ プログラムと通信しました。次に、ボタンをコンピューターのキープレスをシミュレートして、プレイするゲームの代替コントローラーとして使用できるようにしたいと考えています。

Arduino に慣れていない場合でも、気にしないでください。私の問題は完全に C++ にあります。

これに対する解決策は非常に単純です。基本的には、キーストロークのあるウィンドウに SendMessage を使用するか、sendKeys などの多くの代替メソッドを使用することです。

このようなことを処理できるすべてのライブラリまたは Windows 関数を試しましたが、実際にキーボードで押されたキーストロークをシミュレートするものはありません。

これまでに試したことはすべて、メモ帳や Chrome などの多くのプログラムで機能しましたが、キー入力を処理するために Windows メッセージをリッスンしないゲームでは機能しませんでした。

私の推測では、これらのゲームは物理キーボードと直接通信する GetAsyncKeyState を使用していると思われます。

どうすればこれを解決できますか? そのような機能を提供する API は何ですか?

ここでは非常に低レベルの何かが必要です。おそらく、新しいキーボードをエミュレートするプログラムでさえ、物理的なキーボードが接続されていると Windows が認識します。

これは、私がこの問題に何度も遭遇したALOTに役立ちます。近い将来、他のプロジェクトでこの問題に遭遇し続けるでしょう。

誰かが助けてくれることを願っています、ありがとう!

4

1 に答える 1

0

keybd_event()または_SendInput()

于 2013-03-28T17:15:54.177 に答える