윈도우 사용 시 특정 키를 동작 안하게끔, 혹은 다른 키로 동작할 수 있게 변경이 필요한 경우가 있습니다.
오늘은 이럴때, 활용할 수 있는 키보드 매핑 값 변경에 대해 안내하려고 합니다.
활용을 예로 들자면 'ㄱ' 을 눌렀을 때, 'ㄱ' 이 아닌 'ㄴ' 이 입력 되도록 할 수 있는 것입니다.
방법은 아래 방법을 천천히 따라 와 주시면 될 것 같습니다.
우선 해당 파일을 다운로드 받아서, 수정하는 방법으로 진행이 될 예정입니다.
혹시 바이러스등의 걱정이 있으신 분들도 계실 것이니, 해당 내용의 텍스트도 포함하여, 전달 드립니다.
( 작업 내용의 차이는 없으니, 편하신 방법으로 이용 하시면 될 것 같습니다. )
[ 윈도우 키 매핑파일.reg 의 내용 ]
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,00,00,2a,e0,00,00,00,00
각 색의로 구분된 부분을 설명 하자면,
해당 처음 Windows Registry Editor Version 5.00 의 경우는 편집기로 레지스트리를 수정하겠다고 정의 해주는 부분 입니다.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
: 이 부분은 레지스트리에 대해 경험이 있으신 분들은 무엇인지 아시겠지만, 설정을 진행하게 될 경로를 의미 합니다
00,00,00,00,00,00,00,00 : 시작을 의미
02,00,00,00 : 변경할 키 값의 수량을 의미
00,00 : 변경 전 값을 의미
2a,e0 : 변경 후 값을 의미
00,00,00,00 : 종료를 의미
- null 값을 기본적으로 포함하기 때문에, 변경할 총 수량이 1개 라면 02, 00, 00, 00 2개라면 03, 00, 00, 00 을 사용
위의 값들은 헥사코드 ( 16진수 값 ) 이며, 윈도우에서 리틀엔디안 방식으로 동작을 하게 되어 있습니다.
- 빅엔디안 : 상위 바이크 값을 작은 번지 수에 저장 / 리틀엔디안 : 공간에 큰 값 부터 저장
작은 번지수 | 공간에 들어 갈 값 x10203060 | 큰 번지수 | |
빅엔디안 | |||
10 | 20 | 30 | 60 |
리틀엔디안 | |||
60 | 30 | 20 | 10 |
실제 유효한 키보드의 값으로 설명을 하자면, PrintScreen 의 경우 E0 2A 의 값을 가지고 있습니다.
하지만, 실제로 입력이 될 경우 2A E0 의 값으로 저장이 됩니다.
우리가 원하는 E0 2A 의 값으로 저장 되게 하기 위해서는 2A E0 의 값으로 입력하여야 합니다.
PrintSceen : 0xE02A | |||
빅 엔디안 | 리틀엔디안 | ||
E0 | 2A | 2A | E0 |
아래는 수정을 위한 스캔코드(키보드 값) 입니다.
Num Label | Key Code | Scan Code | Symbolic Constant | Value | Etc | |
---|---|---|---|---|---|---|
1 | ~ | ` | 29 | VK_OEM_3 | 0xC0 | |
2 | ! | 1 | 2 | 0x31 | ||
3 | @ | 2 | 3 | 0x32 | ||
4 | # | 3 | 4 | 0x33 | ||
5 | $ | 4 | 5 | 0x34 | ||
6 | % | 5 | 6 | 0x35 | ||
7 | ^ | 6 | 7 | 0x36 | ||
8 | & | 7 | 8 | 0x37 | ||
9 | * | 8 | 9 | 0x38 | ||
10 | ( | 9 | 0A | 0x39 | ||
11 | ) | 0 | 0B | 0x30 | ||
12 | _ | - | 0C | VK_OEM_MINUS | 0xBD | |
13 | + | = | 0D | VK_OEM_PLUS | 0xBB | |
15 | Backspace | 0E | VK_BACK | 0x08 | ||
16 | Tab | 0F | VK_TAB | 0x09 | ||
17 | Q | 10 | 0x51 | |||
18 | W | 11 | 0x57 | |||
19 | E | 12 | 0x45 | |||
20 | R | 13 | 0x52 | |||
21 | T | 14 | 0x54 | |||
22 | Y | 15 | 0x59 | |||
23 | U | 16 | 0x55 | |||
24 | I | 17 | 0x49 | |||
25 | O | 18 | 0x4F | |||
26 | P | 19 | 0x50 | |||
27 | { | [ | 1A | VK_OEM_4 | 0xDB | |
28 | } | ] | 1B | VK_OEM_6 | 0xDD | |
29 | | | \ | 2B | VK_OEM_5 | 0xDC | |
30 | Caps | Lock | 3A | VK_CAPITAL | 0x14 | |
31 | A | 1E | 0x41 | |||
32 | S | 1F | 0x53 | |||
33 | D | 20 | 0x44 | |||
34 | F | 21 | 0x46 | |||
35 | G | 22 | 0x47 | |||
36 | H | 23 | 0x48 | |||
37 | J | 24 | 0x4A | |||
38 | K | 25 | 0x4B | |||
39 | L | 26 | 0x4C | |||
40 | : | ; | 27 | VK_OEM_1 | 0xBA | |
41 | " | 28 | VK_OEM_7 | 0xDE | ||
42 | (in'tl) | 2B | ||||
43 | Enter | 1C | VK_RETURN | 0x0D | ||
44 | L SHIFT | 2A | VK_SHIFT | 0x10 | ||
45 | (in'tl) | 56 | ||||
46 | Z | 2C | 0x5A | |||
47 | X | 2D | 0x58 | |||
48 | C | 2E | 0x43 | |||
49 | V | 2F | 0x56 | |||
50 | B | 30 | 0x42 | |||
51 | N | 31 | 0x4E | |||
52 | M | 32 | 0x4D | |||
53 | < | , | 33 | VK_OEM_COMMA | 0xBC | |
54 | > | . | 34 | VK_OEM_PERIOD | 0xBE | |
55 | ? | / | 35 | VK_OEM_2 | 0xBF | |
56 | (in'tl | ) | 73 | |||
57 | R SHIFT | 36 | ||||
58 | L CTRL | 1D | VK_CONTROL | 0x11 | ||
60 | L ALT | 38 | VK_MENU | 0x12 | ||
61 | Space Bar | 39 | VK_SPACE | 0x20 | ||
62 | R ALT | E0 38 | ||||
64 | R CTRL | E0 1D | ||||
75 | Insert | E0 52 | VK_INSERT | 0x2D | ||
76 | Delete | E0 53 | VK_DELETE | 0x2E | ||
79 | L | Arrow | E0 4B | VK_LEFT | 0x25 | |
80 | Home | E0 | 47 | VK_HOME | 0x24 | |
81 | End | E0 | 4F | VK_END | 0x23 | |
83 | Up | Arrow | E0 48 | VK_UP | 0x26 | |
84 | Dn | Arrow | E0 50 | VK_DOWN | 0x28 | |
85 | Page | Up | E0 49 | VK_PRIOR | 0x21 | |
86 | Page | Down | E0 51 | VK_NEXT | 0x22 | |
89 | R | Arrow | E0 4D | VK_RIGHT | 0x27 | |
90 | Num | Lock | 45 | VK_NUMLOCK | 0x90 | |
91 | Numeric | 7 | 47 | VK_NUMPAD7 | 0x67 | |
92 | Numeric | 4 | 4B | VK_NUMPAD4 | 0x64 | |
93 | Numeric | 1 | 4F | VK_NUMPAD1 | 0x61 | |
95 | Num | / | E0 35 | VK_DIVIDE | 0x6F | |
95 | LS+Num | / | E0 B5 | |||
95 | RS+Num | / | E0 B6 | |||
96 | Numeric | 8 | 48 | VK_NUMPAD8 | 0x68 | |
97 | Numeric | 5 | 4C | VK_NUMPAD5 | 0x65 | |
98 | Numeric | 2 | 50 | VK_NUMPAD2 | 0x62 | |
99 | Numeric | 0 | 52 | VK_NUMPAD0 | 0x60 | |
100 | Numeric | * | 37 | VK_MULTIPLY | 0x6A | |
101 | Numeric | 9 | 49 | VK_NUMPAD9 | 0x69 | |
102 | Numeric | 6 | 4D | VK_NUMPAD6 | 0x66 | |
103 | Numeric | 3 | 51 | VK_NUMPAD3 | 0x63 | |
104 | Numeric | . | 53 | VK_DECIMAL | 0x6E | |
105 | Numeric | - | 4A | VK_SUBTRACT | 0x6D | |
106 | Numeric | + | 4E | VK_ADD | 0x6B | |
107 | (in'tl | ) | 7E | |||
108 | NumEnter | E0 1C | VK_SEPARATOR | 0x6C | ||
110 | Esc | 01 | VK_ESCAPE | 0x1B | ||
112 | F1 | 3B | VK_F1 | 0x70 | ||
113 | F2 | 3C | VK_F2 | 0x71 | ||
114 | F3 | 3D | VK_F3 | 0x72 | ||
115 | F4 | 3E | VK_F4 | 0x73 | ||
116 | F5 | 3F | VK_F5 | 0x74 | ||
117 | F6 | 40 | VK_F6 | 0x75 | ||
118 | F7 | 41 | VK_F7 | 0x76 | ||
119 | F8 | 42 | VK_F8 | 0x77 | ||
120 | F9 | 43 | VK_F9 | 0x78 | ||
121 | F10 | 44 | VK_F10 | 0x79 | ||
122 | F11 | 57 | VK_F11 | 0x7A | ||
123 | F12 | 58 | VK_F12 | 0x7B | ||
124 | PrintScreen | E0 2A | VK_SNAPSHOT | 0x2C | ||
124 | Ctl+PrtScrn | E0 37 | ||||
124 | Shft+PrtScrn | E0 37 | ||||
124 | Alt+PrtScrn | 54 | ||||
125 | Scroll Lock | 46 | VK_SCROLL | 0x91 | ||
126 | Pause | (??) | VK_PAUSE | 0x13 | ||
L-Win | E0 5B | VK_LWIN | 0x5B | |||
R-Win | E0 5C | VK_RWIN | 0x5C | |||
Apps | E0 5D | VK_APPS | 0x5D | |||
|
E0 6A | VK_BROWSER_BACK | 0xA6 | |||
E0 69 | VK_BROWSER_FORWARD | 0xA7 | ||||
E0 67 | VK_BROWSER_REFRESH | 0xA8 | ||||
E0 68 | VK_BROWSER_STOP | 0xA9 | ||||
E0 65 | VK_BROWSER_SEARCH | 0xAA | ||||
E0 66 | VK_BROWSER_FAVORITES | 0xAB | ||||
E0 32 | VK_BROWSER_HOME | 0xAC | ||||
E0 20 | VK_VOLUME_MUTE | 0xAD | ||||
E0 2E | VK_VOLUME_DOWN | 0xAE | ||||
E0 30 | VK_VOLUME_UP | 0xAF | ||||
E0 19 | VK_MEDIA_NEXT_TRACK | 0xB0 | ||||
E0 10 | VK_MEDIA_PREV_TRACK | 0xB1 | ||||
E0 24 | VK_MEDIA_STOP | 0xB2 | ||||
E0 22 | VK_MEDIA_PLAY_PAUSE | 0xB3 | ||||
E0 6C | VK_LAUNCH_MAIL | 0xB4 | ||||
E0 6D | VK_LAUNCH_MEDIA_SELECT | 0xB5 | ||||
E0 6B | VK_LAUNCH_APP1 | 0xB6 | compMgmtLauncher | |||
E0 21 | VK_LAUNCH_APP2 | 0xB7 | calc.exe |
원하는 값을 찾아 .reg ( 레지스트리 파일 ) 수정 한 후 재부팅을 진행하여 변경된 키 값을 확인 해주시면 됩니다.
혹시 모른 잘못된 작업을 되돌리는 방법으로는 해당 위의 reg 파일은 새로운 키 값을 추가 하는 reg 파일 입니다.
위의 적용 경로에서 해당 생성된 키 값을 삭제 진행 해주시면 됩니다.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
이상으로 윈도우에서 키보드 매핑 값을 변경하는 방법에 대해 안내 드렸습니다.
긴 글 따라오시느라 고생 많으셨습니다.
감사합니다.🐢