2011-03-16 4 views
0

Launchy와 같은 프로그램을 만들기 위해 Windows에서 Caps Lock 버튼을 차단하는 가장 좋은 방법은 무엇입니까?Caps Lock을 가로 채기위한 가장 좋은 방법

현재 저수준 훅을 SetWindowsHookEx으로 설정하고 있지만, 낮은 레벨의 활성 상태가 되려고하는 다른 프로그램을 가로 채고 싶지 않기 때문에 저용량입니다. 나는 Caps Lock 자체를 켜는 것을 여전히 막을 수있는 가장 높은 수준의 차단을 찾고 있습니다. 더 좋은 제안이 있습니까?

+0

인라인 asm은 괜찮습니까? : P – BlackBear

+0

롤, 뭐라구? 그게 어떻게 도움이 되겠습니까/일합니까 ?? – Mehrdad

+0

실제로는 꽤 간단합니다. 인터럽트를 호출하고 필요한 비트를 마스크하십시오. – BlackBear

답변

0

분명히 가장 좋은 방법 는 낮은 수준의 후크를 사용하는입니다.

0

당신은 RegisterHotKey를 사용할 수 있습니다

RegisterHotKey(hWnd, 0, 0, VK_CAPITAL); 

창문이 키를 누를 때마다 WM_HOTKEY 메시지가 나타납니다. RegisterHotkey하지 절편 키를 않기 때문에

+1

이것은 예방하지 못합니다. Caps Lock이 상태를 전환하는 것은 너무 높은 수준입니다 :( – Mehrdad

+0

@Mehrdad : 사실이긴하지만 후크를 사용하지 않고는 "방지"할 수는 없지만 단축키를 처리하고 [ SetKeyboardState'] (http://msdn.microsoft.com/en-us/library/ms646314%28VS.85%29.aspx),하지만 후크를 사용하는 것이 더 효율적입니다. – casablanca

+0

아, 그럼 다른 방법은 없나요? 거기에 내가 사용할 수있는 저수준 키보드 후크보다 높은 수준의 후크가 있습니까? 아니면 내 마지막 (그리고 유일한) 옵션입니까? – Mehrdad

관련 문제