2012-10-14 9 views
1

집중된 응용 프로그램에 도달하기 전에 특정 키보드 (해당 HID/이름으로 식별 됨)에서 오는 모든 키 입력을 차단하고 싶습니다. 그러나 나는 여전히이 비활성화 된 키보드를 사용하고 있습니다 (나는 키 입력을 받고 있습니다). 나는 응용 프로그램의 훅이 필요하다고 생각하지만 어떻게 해야할지 모르겠다. 나에게 유용한 링크를 줄 수 있니?특정 키보드에서 키 입력을 차단하십시오.

감사합니다,

편집 : 나는, 낮은 수준의 후크를 필요가 있다고 생각

일반 후크 (I은 기존의 모든 창 & 스레드 후크 의미) .NET Framework의 사용할 수 없기 때문에, 사용자 공간과 관련하여 또한 RAWINPUT을 사용하여 키보드에서 입력 된 키 입력을 얻습니다. 따라서 특정 장치에서 키 입력을 차단하는 후크를 만들면 RAWINPUT도 차단할 수 있습니까?

+0

SetWindowsHookEx? –

+0

setWindowHookEx는 특정 핸들/프로세스에만 해당하는 것 같습니다. 항상 가장 집중된 프로세스를 연결하고 싶습니다. 어쩌면 일종의 "포커스가 바뀌 었습니다"이벤트를 얻을 수는 있지만 좋은 정보를 찾지 못했습니다. – Louisbob

+0

이 프로그램은 내가 원하는대로하는 것 같지만 프로그래머가 어떻게되었는지 이해할 수는 없다. http://nate.dynalias.net/dev/keyboardredirector.rails – Louisbob

답변

0

응용 프로그램에서 입력 소스를 getting raw input data으로 구분할 수 있습니다. 그러나 응용 프로그램에서 WM_CHAR, WM_MOUSEMOVE 또는 WM_APPCOMMAND 대신 WM_INPUT을 처리해야합니다.

+0

내 질문을 잘 이해하지 못했습니다. 내가 뭘하려는 건 키보드와 같은 특정 장치에서 데이터를받는 집중 윈도우 (그래서 내 응용 프로그램이 아닙니다)를 금지하는 것입니다. 집중된 창을 연결해야한다고 확신합니다. – Louisbob

관련 문제