02.JPG






1. 개요
2. 설치
3. 삭제
4. 주의





1. 개요


컴퓬터 한 대에 USB 키보드를 두 개 물렸을 때
두 개의 키보드를 구분하고자 합니다.

한 쪽은 그냥 일반 용도로 사용하고,
다른 한 쪽은 매크로 용도로 사용하고자 합니다.

예를 들어,

한 쪽의 키보드에서 "a" 키를 누르면, 스캔코드 "1E"가 발생하여, 글자 "a"가 정상적으로 나옵니다.
다른 한 쪽 키보드에서 "a" 키를 누르면 발생하는 스캔코드는 "11E"로서, 글자 "a"와 전혀 무관한 특수한 값입니다.

이 특수 키 값은 컴퓨터 프로그램 언어를 통하여 활용할 수 있습니다.
원리는 동일하므로, C/C++/C#, perl, Java, VB.... 어떤 언어던지 무관합니다.
사용하기 가장 쉬운 언어로는 AutoHotkey를 추천합니다.

AHK 예를 들어보면..

"a" 키를 누릅니다. 일반 키보드입니다. "Hello Wordl !!"라는 메시지가 표시됩니다.

Sc1E:: Msgbox Hello World !!

"a" 키를 누릅니다. 키 값을 변형한 다른 키보드입니다. 위치는 같은 "a" 키이지만 결과는 다릅니다.

Sc11E:: Msgbox Hell Chosun !!



2. 설치



해당 USB 포트에 키보드 필터 드라이버를 설치하는 방법입니다.
Microsoft라는 기업에서 지정하는 유료 드라이버 서명 절차는 진행하지 않았지만,
"테스트 모드" 하에서 사용할 수 있습니다. 일반 모드와 아무런 차이/제한/위험 없습니다.

테스트 모드 설정 절차

"명령 프롬프트" 우클릭 > "관리자 권한으로 실행"
bcdedit /set testsigning ON
컴퓨터 리부팅
화면 우측 하단에 "테스트 모드" 메시지 (워터마크) 표시되는 것 확인
(테스트 모드가 아니라면, 드라이버의 설치/사용 불가능)

드라이버 설치 절차


USB 키보드 2개 연결
첨부 파일 다운 > 압축 해제


(설치 전에 해야 할 사전 작업)

kbfiltr.inf 파일 내용 중
HID\VID_04D9&PID_1503&MI_00
이 부분은 게시자 키보드의 "하드웨어 ID"입니다.
이 부분을 사용자에게 맞게 고쳐야 합니다.

장치 관리자 > 키보드 > HID 키보드 장치 (더블클릭)
HID 키보드 장치 속성 > 자세히 > (속성) 장치 설명 (클릭)
"하드웨어 ID" 선택 후 복사하여 모두 (2회 출현) 바꾸시기 바랍니다.


(이제, 드라이버 본격 설치)

장치 관리자 > 키보드 > HID 키보드 장치 (더블 클릭, 둘 중 하나 선택)

드라이버 > 드라이버 업데이트 > 컴퓨터에서 드라이버 소프트웨어 찾아보기 >
컴퓨터의 장치 드라이버 목록에서 직접 선택 > 디스크 있음 > 찾아보기 ( 압축 풀어 놓은 폴더 )
kbfiltr.inf 선택 > 열기 > 확인 > 다음 (경고창 무시.. 계속 진행..)

사용할 스캔코드 전체 목록은 "스캔코드_일람_AHK.txt" 파일 참조
혹은, 스캔코드 확인 프로그램을 눌러보면 발생되는 코드 알 수 있음

설치 후 다운 받은 폴더의 파일은 모두 지워도 무관.



3. 삭제



테스트 모드 해제 절차

"명령 프롬프트" 우클릭 > "관리자 권한으로 실행"
bcdedit /set testsigning OFF
컴퓨터 리부팅
화면 우측 하단에 "테스트 모드" 메시지 (워터마크) 표시없는 것 확인

설치한 드라이버 삭제 절차

제어판 > 장치 관리자 > 키보드 > HID 키보드 장치 (더블 클릭) > 제거
이후 부팅 과정에서 Windows 기본 USB 드라이버가 "자동"으로 설치됨.



4. 주의



Windows 8.1K 64bit 전용

제가 쓰는 환경에만 맞게 만든 것이므로
다른 환경은 전혀 아는 바 없음..
물론, 위의 환경에서도 그 어떤 보장 없음,
사용자의 판단에 따를 뿐임

아, 한가지..
Windows 7 간단히 걸어 본 결과,
작동 안 하고 블루스크린 발생  --> 절대 사용 금지

일부 매우 강력한, 드라이버 수준까지 통제하기를 원하는
그런 종류의 프로그램에 의해서 차단을 당하기도 함.


==