'Win32 API'에 해당되는 글 1건

  1. 2007.04.29 간편한 Hooking - JOURNAL HOOK

간편한 Hooking - JOURNAL HOOK

Posted by NUL PROG. : 2007. 4. 29. 15:34
애플리케이션제작 시 간혹 실행 중의 마우스와 키보드의 상태를 알고 싶을 수가 있다.

 이럴 경우 SetWindowsHookEx란 녀석을 사용하여 해당 애플리케이션 혹은 모든 입력에 대하여 소위 Hooking란 것을 하게 되는데 다소 귀찮은 문제점이 있다.

 전역으로 후킹을 하려면 DLL을 사용해야 하기 때문이다.

 그러나 WH_JOURNALRECORD를 사용하게 되면 실행 프로그램 내에서 마우스 키보드의 후킹이 가능하다 !!

그러나,

 이녀석은 다른 Hooking과는 차이가 많은 엄밀히 얘기하면 Hooking이라 부르기 어려운 녀석이다.

 흔히 매크로라고 하는 것(사용자의 입력을 저장했다가 그대로 실행하는)을 위해 만들어진 듯한데, 그러다 보니 Hooking을 하는 게 아니라 메시지 큐의 메시지가 어떤 것들이 들어가 있나 하는 걸 그저 볼 수 있을 뿐이다. 따라서 후킹처럼 마우스 입력을 차단하거나 하는 기능은 할 수가 없고, 실시간으로 광범위한 메시지를 가져오기 때문에 그 데이터의 종류와 범위도 제한적이다.

 그래도, 언제나 선호하는 간단한 방법으로 마우스/키보드의 입력을 탐지할 수 있기 때문에, 나름 쓸모가 있지 않을까 싶다.

 이런 저런 테스트도 해보고 싶지만, 언제나 그렇듯이 이런 OS 의존적인 API는 그다지 값어치가 있다고 여기진 않기에, 나중에 심심해지면 한번 해보리라 생각을 정리하고 끝을 내야겠다.

 구글에서 SetWindowsHookEx,  WH_JOURNALRECORD, WH_JOURNALPLAY를 찾아 보면 관련 글이 부지기수로 많이 나온다.

 흔치않은 델파이 소스니 아랫것만 링크를 걸어놔야겠다.;


  
 «이전 1  다음»