본문 바로가기

프로그래밍/Hook

가장 쉽게 사용할 수 있는 후킹 API SetWindowsHookEx

반응형


가장 쉽게 키로그 프로그램을 만들 수 있는 방법은

위에 소개한대로 SetWindowsHookEx API를 사용하는 방법이다.

사용하는 방법은 아래와 같다.

SetWindowsHookEx(WH_KEYBOARD_LL, KeyHookProc, theApp.m_hInstance, NULL);

요곳이야 말로 키보드를 후킹하겠다.라는 건데

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644990(v=vs.85).aspx 에도 나와 있듯 키보드만 되는게 아니다. 마우스 등등 각각 대상을 정할 수 있다.

KeyHookProc 이거슨 콜백 함수인데 키보드를 예제로 인자를 보자면 

int nCode, WPARAM wParam, LPARAM lParam 3개의 인자를 볼 수 있다.

LRESULT CALLBACK KeyHookProc(int nCode, WPARAM wParam, LPARAM lParam)

{

return CallNextHookEx(hKeyHook,nCode,wParam,lParam);

}

중요한건 쉽게하는만큼 쉽게 막힌다. 그리고..

WPARAM 은 LPKBDLLHOOKSTRUCT 에 파싱해야 되고 

LPARAM  값은 keydown, keyup, 과 같은 값들을 표현한다.




반응형

'프로그래밍 > Hook' 카테고리의 다른 글

Detour 다운로드  (0) 2014.01.14
Detour 를 이용한 사용자 레벨에서의 후킹  (0) 2012.10.23