후크 함수 등록

클라이언트 애플리케이션은 WinEventProc 콜백 함수에서 WinEvents 를 받습니다. 콜백 함수에서 수행하는 작업은 애플리케이션에서 정의하지만 구문은 프로토타입에 지정되어야 합니다.

이벤트를 수신하려면 먼저 SetWinEventHook를 호출하여 함수를 등록해야 합니다. 클라이언트는 SetWinEventHook 를 두 번 이상 호출하여 다른 후크 함수를 등록하거나 이전에 등록된 후크 함수에 대한 추가 이벤트를 설정할 수 있습니다.

SetWinEventHook를 호출할 때 클라이언트는 받을 이벤트와 수신 방법을 지정합니다. 클라이언트는 다음을 선택할 수 있습니다.

  • 모든 이벤트 또는 특정 이벤트 집합을 수신합니다.
  • 모든 스레드 또는 특정 스레드에서 이벤트를 수신합니다.
  • 모든 프로세스 또는 특정 프로세스에서 이벤트를 수신합니다.
  • 프로세스 또는 프로세스에서 이벤트를 처리합니다.

지정된 조건과 일치하는 이벤트가 생성되면 시스템은 클라이언트의 WinEventProc 콜백 함수(또는 "후크 프로시저")를 호출합니다. 후크 함수가 수신하는 매개 변수는 이벤트를 생성한 창, 개체 및 가능한 자식 요소에 대해 클라이언트에 알립니다. 클라이언트는 AccessibleObjectFromEvent와 같은 개체 검색 호출에서 이러한 매개 변수를 사용합니다.