Windows 훅을 올바르게 설정할 수 있지만 MSDN의 "CallNextHookEx 함수를 호출하여 다음 훅 프로 시저로 연결하는 옵션은 선택 사항이지만 매우 권장됩니다. 그렇지 않으면 후크를 설치 한 다른 응용 프로그램은 후크 알림을받지 못하고 결과적으로 잘못 작동 할 수 있으므로 다른 응용 프로그램에서 알림이 표시되지 않도록해야하는 경우가 아니라면 CallNextHookEx를 호출해야합니다. "SetWindowsHookEx 및 CallNextHookEx를 올바르게 사용하는 방법
나는 좋은 프로그래밍 시민이되고 다음 걸음을 불러. 하지만 내 후크 절차는 다음과 같습니다.
LRESULT CALLBACK CBTProc(int code, WPARAM wp, LPARAM lp)
{
if (code != HCBT_CREATEWND)
{
// What do I do here? It's not the event I requested so how do I pass it on?
return 0;
}
// It's the code we want (create window)
CallNextHookEx(...);
...
}
코드에 관심이없는 경우 어떻게됩니까? 다음 걸음을 어떻게 부르죠?
편집 : 주된 문제는 HHOOK가 SetWindowsHookEx에서 반환되고 CallNextHookEx 함수에 전달되어야한다는 것입니다.
업데이트 : 그것은 후크 매개 변수는 NT 플랫폼에서 무시됩니다 보인다
http://msdn.microsoft.com/en-us/library/ms644974.aspx
http://www.klenotic.com/pl/null_hhook/
CallNextHookEx가 (SetWindowsHookEx에서 반환 된) HHOOK 매개 변수를 사용하기 때문에 작동하지 않습니다. –
죄송합니다. 답변을 업데이트하겠습니다. – Charlie
흠, 거기에 뭔가있을 수 있습니다. 나는 NT/XP/2003에서 무시되는 "hhk"매개 변수에 대해 조금 빗나갔습니다. 이제 약간의 테스트를 할 것입니다. –