キーコードスキャン値 と キーコードマップの書式 - Windows

キーコードスキャン値の一覧です。

キーコードスキャン値

主要な修飾キーのスキャンコード値

キー名
ESC00 01
TAB00 0F
CapsLock00 3A
左Shift00 2A
右Shift00 36
左Alt00 38
右AltE0 38
左ctrl00 1D
右ctrlE0 1D
PrintScreenE0 37
上矢印E0 48
下矢印E0 50
右矢印E0 4D
左矢印E0 4B
InsertE0 52
DeleteE0 53
HomeE0 47
EndE0 4F
PageUpE0 49
PageDownE0 51
左Win keyE0 5B
右Win keyE0 5C
applicationE0 5D
PAUSE00 45
ScrollLock00 46

スキャンコード値

キー名補足
~ ´29日本語キーボードの場合は E/J キー
! 102
@ 203日本語キーボードの場合は " 2 キー
# 304
$ 405
% 506
^ 607日本語キーボードの場合は & 2 キー
& 708日本語キーボードの場合は ' 7 キー
* 809日本語キーボードの場合は ( 8 キー
( 90A日本語キーボードの場合は ) 9 キー
) 00B日本語キーボードの場合は = 0 キー
_ -0C日本語キーボードの場合は = - キー
+ =0D日本語キーボードの場合は ~ ^ キー
7D日本語キーボードの場合は \ &#x7C キー
Backspace0E
Tab0F
Q10
W11
E12
R13
T14
Y15
U16
I17
O18
P19
{ [1A日本語キーボードの場合は @ ´ キー
&#x7D &#x5D1B日本語キーボードの場合は [ { キー
&#x7C \2B
Caps Lock3A
A1E
S1G
D20
F21
G22
H23
J24
K25
L26
: ;27日本語キーボードの場合は ; + キー
" '28日本語キーボードの場合は : * キー
(in'tl)2B日本語キーボードの場合は &#x5D &#x7D キー
Enter1C
L SHIFT2A
(in'tl)56
Z2C
X2D
C2E
V2F
B30
N31
M32
< ,33
> .34
? /35
(in'tl)73日本語キーボードの場合は \ _ キー
R SHIFT36
L CTRL1D
L ALT38
Space Bar39
R ALTE0 38
R CTRLE0 1D
InsertE0 52
DeleteE0 53
L ArrowE0 4B
HomeE0 47
EndE0 4F
Up ArrowE0 48
Down ArrowE0 50
Page UpE0 49
Page DownE0 51
R ArrowE0 4D
Num Lock45
Numeric 747
Numeric 44B
Numeric 14F
Numeric /E0 35
LS+Numeric /E0 B5
ES+Numeric /E0 B6
Numeric 848
Numeric 54C
Numeric 250
Numeric 052
Numeric *37
Numeric 949
Numeric 64D
Numeric 351
Numeric .53
Numeric -4A
Numeric +4E
(in'tl)7E
Numeric EnterE0 1C
Esc01
F13B
F23C
F33D
F43E
F53F
F640
F741
F842
F943
F1044
F1157
F1258
Print ScreenE0 A2
Crtl + Print ScreenE0 37
Shift + Print ScreenE0 37
Alt + Print Screen54
Scroll Lock46
Pause45
L WindowsE0 5B
R WindowsE0 5C
ApplicationE0 5D

特殊キーのスキャンコード値

キー名
ブラウザ 戻るA6
ブラウザ 進むA7
ブラウザ 更新A8
ブラウザ 停止A9
ブラウザ 検索AA
ブラウザ お気に入りAB
ブラウザ ホームAC
ボリューム ミュートAD
ボリューム DOWNAE
ボリューム UPAF
次のメディアトラックB0
前のメディアトラックB1
メディアの停止B2
メディアのポーズ(一時停止)B3
メールアプリ起動B4
メディア選択アプリ起動B5
アプリ1 起動(ラウンチャー)B6
アプリ2 起動(電卓)B7

キーコードマップのフォーマット

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout キー内に Scancode Map の名称でバイナリ値を作成します。
以下の書式でバイナリ値を設定します。
00 00 00 00ヘッダ
00 00 00 00ヘッダ
03 00 00 00マッピング数 (このDWORD(4バイト)以降、終端ヌルまでのDWORD数)
nn nn NN NNマッピング "NN NN" キーに "nn nn" キーを割り当てます
(キー割り当てを変更する数だけ繰り返します)
00 00 00 00終端ヌル
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2021-02-19
iPentec all rights reserverd.