私のコンピュータには 2 つのキーボードが接続されています。通常のフルサイズのキーボードとテンキー。テンキーのキーを「再マップ」したいのですが、フルキーボードはそのままにしておきます。そのため、ユーザーがキーパッドで「5」を押すと、「Media Play」キーに再マップされますが、フル キーボードのキーパッドで同じ「5」を押すと、「5」が返されます。本質的に、私はその別の数字キーパッドをメディア コントロール デバイスに変えたいと思っています。
残念ながら、これを機能させる方法がわかりません。Windows には、キーボードを区別できる "Raw Input" 機能がありますが、これはキーの読み取りのみを許可し、キーの再マッピングは許可しません。キーストロークを再マップできるキーボードフック (低レベルと高レベル) がありますが、キーボードを区別しません。
2 つの方法を組み合わせて機能させることはできますか? そのためには、キーボード フックが作動する前に生の入力メッセージが処理されていることを確認する必要があります。そうですか?
また、Windows では、何らかの理由で Raw Input と Keyboard Hooks を同じプロセスで使用できないことを読みました。2 つの異なるプロセスを作成することでこれを回避できますが、通信の遅延のために脆弱になります (キーボード フックが作業を完了しなければならない時間は非常に限られています)。
これはまったく実行可能ですか?