Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

노트북 키보드에 없는 BREAK 키를 다른 키로 대체하는 방법

제가 사용하는 노트북은 삼성 시리즈7 크로노스입니다.

새로운 노트북 - 삼성 센스 NT700Z5C-S88 크로노스
; https://www.sysnet.pe.kr/0/0/449

재미있는 것은, 이 노트북의 키보드에 "BREAK"키가 없습니다. 일반 사용자라면 상관없을 키패드이지만, Visual Studio를 사용하는 개발자의 경우 다음의 2가지 상황에서 BREAK 키가 사용됩니다.

  • 빌드 취소: Ctrl + BREAK
  • 디버깅 실행 중 모든 스레드 정지하고 디버거로 진입(Break All): Ctrl + Alt + BREAK

물론, 간혹 사용되는 거라서 메뉴로 대체해도 되지만 그래도 가끔씩 아쉬울 때가 있습니다. 다행이라면! 이를 해결하는 방법이 레지스트리에 있습니다.

키보드 매핑을 바꾸는 레지스트리 설정
; https://www.sysnet.pe.kr/2/1/1126

키 값을 편하게 바꾸려면 유틸리티를 사용할 수 있는데요. 아무래도 HKLM 레지스트리를 건드리는 것이므로 무조건 관리자 권한을 요구하게 되는데, 이런 경우 반드시 안전하다고 판단할 수 있는 유틸리티를 사용해야 합니다. 가령 다음과 같은 것이죠. ^^

SharpKeys
; http://sharpkeys.codeplex.com/

소스코드까지 첨부되어 있으니, 그래도 꺼림직한 분들은 소스 코드를 다운로드 받아서 컴파일해서 사용하시면 됩니다.




제 경우에 거의 쓰지 않는 INSERT 키를 BREAK 키로 대체하고 싶었는데요. SharpKeys 프로그램 실행 후, "Add" 버튼을 눌러 "Map this key (From key):" 목록 상자에서 다음과 같이 "Special: Insert (E0_52)" 항목을 선택하고, "To this key (To key):" 에 "Unknown: 0xE046 (E0_46)"을 선택했습니다.

remap_key_1.png

그런데 "Unknown: 0xE046 (E0_46)"이란 값이 왜 나온 것일까요? 그 이유는, 현재 키보드에 Break 키가 없는 상태이기 때문에 목록에도 "Break" 키 항목을 찾을 수가 없습니다. 대신 스캔 코드 값을 직접 알아내야 했는데요. 검색을 통해 아래의 문서에서,

Keyboard scancodes
; http://www.win.tue.nl/~aeb/linux/kbd/scancodes-1.html

"e0 46 (Ctrl-Break)" 라고 나오는 것을 보고 선택하게 된 것입니다.

이렇게 설정하고 "Write to Registry" 버튼을 누르면 해당 설정으로 레지스트리 값이 기록됩니다.

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,46,e0,52,e0,00,00,00,00

보는 바와 같이, "46,e0"은 Ctrl-Break 키를 의미하고, "52,e0"은 기존의 Insert 키입니다.

변경된 키 값을 반영하려면 다시 로그인을 하거나, 속편하게 재부팅을 하시면 됩니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 1/23/2015]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 76  77  78  79  80  [81]  82  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
11971정성태7/3/201921905개발 환경 구성: 447. Visual Studio Code에서 OpenCvSharp 개발 환경 구성
11970정성태7/2/201921866오류 유형: 552. 웹 브라우저에서 파일 다운로드 후 "Running security scan"이 끝나지 않는 문제
11969정성태7/2/201922443Math: 63. C# - 3층 구조의 신경망파일 다운로드1
11968정성태7/1/201929043오류 유형: 551. Visual Studio Code에서 Remote-SSH 연결 시 "Opening Remote..." 단계에서 진행되지 않는 문제 [1]
11967정성태7/1/201923236개발 환경 구성: 446. Synology NAS를 Windows 10에서 iSCSI로 연결하는 방법
11966정성태6/30/201921796Math: 62. 활성화 함수에 따른 뉴런의 출력을 그리드 맵으로 시각화파일 다운로드1
11965정성태6/30/201922296.NET Framework: 846. C# - 2차원 배열을 1차원 배열로 나열하는 확장 메서드파일 다운로드1
11964정성태6/30/201923095Linux: 20. C# - Linux에서의 Named Pipe를 이용한 통신
11963정성태6/29/201922597Linux: 19. C# - .NET Core Unix Domain Socket 사용 예제
11962정성태6/27/201920258Math: 61. C# - 로지스틱 회귀를 이용한 선형분리 불가능 문제의 분류파일 다운로드1
11961정성태6/27/201921180Graphics: 37. C# - PLplot - 출력 모음(Family File Output)
11960정성태6/27/201922136Graphics: 36. C# - PLplot의 16색 이상을 표현하는 방법과 subpage를 이용한 그리드 맵 표현
11959정성태6/27/201923414Graphics: 35. matplotlib와 PLplot의 한글 처리
11958정성태6/25/201927605Linux: 18. C# - .NET Core Console로 리눅스 daemon 프로그램 만드는 방법 [6]
11957정성태6/24/201924613Windows: 160. WMI 쿼리를 명령행에서 간단하게 수행하는 wmic.exe [2]
11956정성태6/24/201924484Linux: 17. CentOS 7에서 .NET Core Web App 실행 환경 구성 [1]
11955정성태6/20/201922523Math: 60. C# - 로지스틱 회귀를 이용한 분류파일 다운로드1
11954정성태6/20/201920419오류 유형: 550. scp - sudo: no tty present and no askpass program specified
11953정성태6/20/201918121오류 유형: 549. The library 'libhostpolicy.so' required to execute the application was not found in '...'
11952정성태6/20/201919432Linux: 16. 우분투, Centos의 Netbios 호스트 이름 풀이 방법
11951정성태6/20/201922662오류 유형: 548. scp 연결 시 "Permission denied" 오류 및 "WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!" 경고
11950정성태6/18/201923851.NET Framework: 845. C# - 윈도우 작업 관리자와 리소스 모니터의 메모리 값을 구하는 방법
11949정성태6/18/201919235오류 유형: 547. CoreCLR Profiler 예제 프로젝트 빌드 시 컴파일 오류 유형
11948정성태6/17/201920547Linux: 15. 리눅스 환경의 Visual Studio Code에서 TFS 서버 연동
11947정성태6/17/201923425Linux: 14. 리눅스 환경에서 TFS 서버 연동
11946정성태6/17/201924586개발 환경 구성: 445. C# - MathNet으로 정규 분포를 따르는 데이터를 생성, PLplot으로 Histogram 표현파일 다운로드1
... 76  77  78  79  80  [81]  82  83  84  85  86  87  88  89  90  ...