다음을 통해 공유


MouseProc 함수

Description

SetWindowsHookExA SetWindowsHookExW함수와 함께 사용되는 애플리케이션 정의 또는 라이브러리 정의 콜백 함수입니다./ 시스템은 애플리케이션이 GetMessage 또는 PeekMessageA/PeekMessageW 함수를 호출하고 처리할 마우스 메시지가 있을 때마다 이 함수를 호출합니다.

HOOKPROC 형식은 이 콜백 함수에 대한 포인터를 정의합니다. MouseProc 은 애플리케이션 정의 또는 라이브러리 정의 함수 이름의 자리 표시자입니다.

LRESULT CALLBACK MouseProc(
  _In_ int    nCode,
  _In_ WPARAM wParam,
  _In_ LPARAM lParam
);

매개 변수

nCode [in]

형식: int

후크 프로시저가 메시지를 처리하는 방법을 결정하는 데 사용하는 코드입니다.

nCode가 0보다 작은 경우 후크 프로시저는 추가 처리 없이 CallNextHookEx 함수에 메시지를 전달해야 하며 CallNextHookEx에서 반환된 값을 반환해야 합니다.

이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
HC_ACTION 0 wParamlParam 매개 변수에는 마우스 메시지에 대한 정보가 포함됩니다.
HC_NOREMOVE 3 wParamlParam 매개 변수에는 마우스 메시지에 대한 정보가 포함되어 있으며 메시지 큐에서 마우스 메시지가 제거되지 않았습니다. ( peekMessage 함수라는 애플리케이션으로 , PM_NOREMOVE 플래그를 지정합니다.

wParam [in]

형식: WPARAM

마우스 메시지의 식별자입니다.

lParam [in]

형식: LPARAM

MOUSEHOOKSTRUCT 구조체에 대한 포인터입니다.

반환

형식: LRESULT

nCode가 0보다 작은 경우 후크 프로시저는 CallNextHookEx에서 반환된 값을 반환해야 합니다.

nCode가 0보다 크거나 같고 후크 프로시저가 메시지를 처리하지 않은 경우 CallNextHookEx를 호출하고 반환하는 값을 반환하는 것이 좋습니다. 그렇지 않으면 WH_MOUSE 후크를 설치한 다른 애플리케이션은 후크 알림을 받지 못하며 결과적으로 잘못 동작할 수 있습니다.

후크 프로시저가 메시지를 처리한 경우 시스템이 메시지를 대상 창 프로시저에 전달하지 못하도록 0이 아닌 값을 반환할 수 있습니다.

설명

애플리케이션은 SetWindowsHookExA/SetWindowsHookExW 함수 호출에서 후크 프로시저에 대한 포인터와 WH_MOUSE 후크 형식을 지정하여 후크 프로시저를 설치합니다.

후크 프로시저는 WH_JOURNALPLAYBACK 콜백 함수를 설치해서는 안됩니다.

이 후크는 설치한 스레드의 컨텍스트에서 호출될 수 있습니다. 호출은 후크를 설치한 스레드에 메시지를 전송하여 이루어집니다. 따라서 후크를 설치한 스레드에는 메시지 루프가 있어야 합니다.

추가 정보

CallNextHookEx

GetMessage

MOUSEHOOKSTRUCT

PeekMessage

SetWindowsHookEx

후크

후크 정보