728x90


윈도우상에서 서로 다른 장치간의 명령을 전달하는 메시지에 관련된 API 함수

[메시지 관련함수]

BroadcastSystemMessage

-         현재 실행중인 모든 응용 프로그램이나 드라이버로 메시지를 보낸다.

CallMsgFilter

-         메시지를 전달하고 훅 프로시저에 훅 코드를 전달한다.

CallNextHookEx

-         현재 훅 Chain상의 다음 훅 프로시저에 정보를 전달한다.

DefWindowProc

-         메시지 인자값을 정상적인 처리를 위해 메시지 프로시저로 전달한다.

DispatchMessage

-         응용 프로그램의 메시지 루프에서 처리하기에 적절한 윈도우 프로시저로 메시지를 보

낸다.

GetMessage

-         어플리케이션의 메시지 큐에서 메시지를 취득한다.

GetMessageExtraInfo

-         마지막으로 받은 메시지의 추가 정보를 받는다.

GetMessagePos

-         마지막 메시지가 전달되었을 때 화면 좌표의 커서 위치를 알려준다.

GetMessageTime

-         윈도우가 시동된 이후로 경과된 시간을 미리 초 단위로 구한다.

InSendMessage

-         윈도우에서 보내온 메시지와 다른 쓰레드에서 보내온 메시지를 구분한다.

PeekMessage

-         결과값을 보내기 전에 큐에 있는 메시지를 기다리지 않고 메시지가 존재한다면 MSG 구조체에 보관한다.

PostMessage

-         메시지 큐 안에 메시지를 넣고 함수를 끝내고 복귀한다.

PostQuitMessage

-         윈도우를 종료하는 실제적인 함수이다

PostThreadMessage

-         메시지가 수행되기를 기다리지 않고 지정한 쓰레드의 메시지큐에 메시지를 놓는다.

RegisterWindowMessage

-         레지스트리에 특정한 메시지를 등록한다.

ReplyMessage

-         SendMessage() 함수에 전달된 메시지에 응답한다.

SendMessage

-         파라미터로 지정된 윈도우 핸들값을 갖고 있는 위도우나 컨트롤에 지정된 메시지를 보낸다.

SendMessageTimeOut

-         메시지를 처리하는데 TimeOut 시간이 있어서 메시지를 윈도우에 전달한 후 메시지가 처리되거나 TimeOut 시간이 끝날때까지 반환되지 않는다.

SendNotifyMessage

-         지정한 윈도우에 메시지를 보낸다.

SetWindowsHookEx

-         윈도우 메시지 필터 함수를 DLL 이나 응용 프로그램에 설치한다.

TranslateMessage

-         윈도우안에서 사용되는 Virualkey Message Char Message 롤 변환하는 함수이다.

UnhookWindowsHookEx

-         SetWindowsHooksHookEx() 함수에서 설정된 훅 프로시저를 체인에서 제거한다.

WaitMessage

 -  새로운 메시지가 메시지 큐에 들어올때까지 기다린다.


구조체

Type MSG

 hwnd as long

 message as long

 wParam as long

 lParam as long

 time as long

 pt as POINTAPI

End Type

 

hWnd : 이벤트를 발생한 윈도우의 핸들

message : 이벤트에 대응하는 메시지 값으로 정의된 매크로 이름을 사용 한다.

wParam / lParam : 이벤트에 대한 정보 (마우스나 키보드의 눌러진 키값, 마우스의 위치, 시스템 관련 정보) 를 갖고 있음.

 

 time : 메시지가 발생한 시간 (마이크로 초0

 pt   : 화면상의 마우스 위치 정보 (x,y)

 

주요 메시지

 WM_CHAR : 키보드 입력 처리

키보드가 눌러졌을 때 현재 WM_CHAR 가 활성화된 윈도우로 보내진다.

       이때 wParam에는 눌러진 키 값이 ASC코드로 들어가며 lParam 에는 키가 눌러진
       횟수와 눌러진 키가 확장키인지 ALT 키가 같이 눌러졌는지 등의 정보비트를 포함 한다.

WM_COMMAND

     메뉴항목을 선택할 때 발생하는 메시지

 WM_CREATE

       윈도우를 생성하는 메시지

 WM_DESTROY

       프로그램을 종료시키다.

 WM_KEYDOWN

       펑션키 입력 메시지

 WM_LBUTTONDOWN

       마우스의 왼쪽 버튼이 눌러졌을 때 발생되는 메시지

 WM_RBUTTONDOWN

       마우스의 오른쪽 버튼이 눌러졌을 때 발생되는 메시지

 WM_LBUTTONUP

       마우스의 왼쪽 버튼을 놓았을 때 발생되는 메시지

 WM_RBUTTONUP

       마우스의 오른쪽 버튼을 놓았을 때 발생되는 메시지

WM_LBUTTONDBLCLK

      마우스의 왼쪽 버튼 더블클릭시 발생되는 메시지

WM_RBUTTONDBLCLK

      마우스의 오른쪽 버튼 더블 클릭시 발생되는 메시지

WM_PAINT

      윈도우 그리기(화면 제출력)

WM_TIMER

      타이머가 꺼질 때마다 발생되는 메시지

+ Recent posts