1

Windows XP pro SP3 を使用しています。標準の英語キーボード。私はアメリカ合衆国に住んでいる; キーボードの設定に触れたことはありません。ストック取り付け。したがって、プログラムが返すスキャンコードを確認すると、次のようになります。

A = 30
S = 31
D = 32
F = 33
G = 34

Microsoft の仕様 (ドキュメントの 11 ページ:: http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/scancode.doc ) を確認すると、次のように書かれています。

A = 31
S = 32
D = 33
F = 34
G = 35

それらは 1 ずれています。理由はありますか?

4

2 に答える 2

1

引用した Microsoft Keyboard Scan Code Specification には 6 つの列があります。A キーの場合:

キーの位置: 31
キーボード: A
スキャン 1 メイク: 1E
スキャン 1 ブレーク: 9E
スキャン 2 メイク: 1C
スキャン 2 ブレーク: F0 1C

その「スキャン 2」セットは、元の IBM PC スキャン コード (「スキャン 1」) とは異なる代替ハードウェア スキャン コードのようです。「キーの場所」が 31 で、「スキャン 1 の作成」が 30 であることに注意してください。おそらく、各セットでかなり異なる Esc や ` などのキーを調べてみてください (誤解を招くと思いますが、1 つだけではありません)。

報告したスキャン コードの値を取得するために使用した API または Windows メッセージについては言及していませんが、使用しているものの詳細なドキュメントを参照すると、より多くの情報が見つかる可能性があります。

于 2009-11-20T01:48:23.160 に答える
-1

キーボードがハードウェア レベルで故障しているか、それともキーボード ドライバーに問題があるかを確認できますか?

于 2009-11-20T00:31:31.563 に答える