0

「再マップ」とは、スキャン コードを他のスキャン コードに自動的に変換する Windows 機能を使用することを意味します。これは、KeyTweak などのツールによって、または特定のレジストリ キーを編集することによって直接構成されます。

WM_KEYDOWN メッセージとフレンドを使用すると、正しく再マップされたキーを取得できます。同じことが DirectInput にも当てはまります。しかし、Raw Input の場合はそうではありません。再マップされたキーを取得する方法はありますか? 元のスキャン コードや VK コードは必要ありません。再マッピングされたものだけが必要です。

MSDN によると、DirectInput をキーボード入力に使用した場合、Raw Input のラッパーであるとのことです。しかし、どういうわけか、DirectInput はリマップされたキーを取得しますが、Raw Input は取得しません。

4

1 に答える 1

1

私の推測では、DI は初期化時にレジストリからスキャンコード マップの値を読み取り、キー コードを内部で変換します。これは、「スキャンコード マップ」レジストリ値に関する古いドキュメントですが、まだ正しいドキュメントです。

于 2011-10-29T23:50:29.250 に答える