0: 윈도우가비활성화되었을때 1: 윈도우가마우스클릭이외의다른방법으로활성화되었을때 2: 윈도우가마우스클릭으로활성화되었을때 윈도우의상태를나타내며, 윈도우가아이콘으로변했을경우 LOWORD는 0이아닌값이고, 0일경우는다음과같이 lparam 는 wparam 에의존한다. wpar

Similar documents
1. 개요 MyCrackIt.exe 프로그램은기본적으로대화상자기반의윈도우용프로그램이다. 분석을위해서해당프로그램에서사용되는 API에대한내용을사전에조사하게될경우빠른분석이가능하다. 따라서, 이번 MyCrackIt.exe 에서사용하는 API 함수에대해서사전에조사하는것이필요하며

Microsoft PowerPoint - hci2-lecture5.ppt

04장 메시지 처리 유형

Microsoft PowerPoint - 04windows.ppt

Microsoft PowerPoint - CPP_chap3

Microsoft PowerPoint - 09-CE-14-리스트콤보박스

4장기본프로그래밍2

UI TASK & KEY EVENT

Microsoft PowerPoint - 09-CE-5-윈도우 핸들

Javascript

Microsoft PowerPoint - hci2-lecture5-messagemap.ppt

윈도우즈 프로그래밍

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

1장 윈도우 프로그래밍 들어가기

Chapter 1. MFC 시작하기

Visual Basic 반복문

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

두번째행에는사용자가작성한매크로를저장할파일이름을표시합니다. 다른저장된파일을읽어들이거나새로운파일로작성할때는 [ ] 버튼을눌러파일열기대화상자에서파일이름을선택하거나새로만들면됩니다. 만일새로운파일을열때는이전에작업중이던매크로는저장됩니다. 대화상자중앙에매크로목록이보이고매크로를기록하

슬라이드 1

슬라이드 1

오버라이딩 (Overriding)

PowerPoint Template

1

PowerPoint 프레젠테이션

목차 1. 시스템요구사항 암호및힌트설정 ( 윈도우 ) JetFlash Vault 시작하기 ( 윈도우 ) JetFlash Vault 옵션 ( 윈도우 )... 9 JetFlash Vault 설정... 9 JetFlash Vault

게임 기획서 표준양식 연구보고서

MF5900 Series MF Driver Installation Guide

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63>

PowerPoint Template

chap 5: Trees

Microsoft Word - src.doc

Microsoft PowerPoint - hci2-lecture1.ppt

Visual Basic 기본컨트롤

View Licenses and Services (customer)

개요 1. 후킹이란? 후킹의정의.. 2 후킹의종류 2 앞으로 후킹프로그램을위한사전지식들 Window 에서 data 입력과정.. 3 DLL ( Dynamic Link Library ).. 4 메시지후킹을위해필요한지식들 5 3. 후킹프로그램제작에필요한 API

<4D F736F F F696E74202D203031C0E520C0A9B5B5BFEC20C7C1B7CEB1D7B7A1B9D620B1E2C3CA5FBFB5B3B2C0CCB0F8B4EB205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

Studuino소프트웨어 설치

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme

윈도우즈 프로그래밍

사용설명서를 읽기 전에 ios용 아이디스 모바일은 네트워크 연결을 통해 ios 플랫폼 기반의 모바일 기기(iOS 버전 6.0 이상의 ipod Touch, iphone 또는 ipad)에서 장치(DVR, 네트워크 비디오 서버 및 네트워크 카메라)에 접속하여 원격으로 영상을

VISLAB 박제강 1. 시작하기전에영상관련알고리즘을개발하는과정에서작성한프로그램을테스트하고피드백하는작업은빈번하게발생한다. 이때기존콘솔 (Console) 형태로작성된프로그램의경우테스트작업을유동적으로조절할수없기때문에작업의효율이떨어진다. 반면 GUI(Graphical Use

tkinter를 이용한 계산기 구현

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

사용설명서를 읽기 전에 안드로이드(Android)용 아이디스 모바일은 네트워크 연결을 통해 안드로이드 플랫폼 기반의 모바일 기기에서 장치 (DVR, NVR, 네트워크 비디오 서버, 네트워크 카메라) 에 접속하여 원격으로 영상을 감시할 수 있는 프로그램입니다. 장치의 사

vRealize Automation용 VMware Remote Console - VMware

윈도우 프로그래밍

경우 1) 80GB( 원본 ) => 2TB( 복사본 ), 원본 80GB 는 MBR 로디스크초기화하고 NTFS 로포맷한경우 복사본 HDD 도 MBR 로디스크초기화되고 80GB 만큼포맷되고나머지영역 (80GB~ 나머지부분 ) 은할당되지않음 으로나온다. A. Window P

NTD36HD Manual

MF3010 MF Driver Installation Guide

지도상 유의점 m 학생들이 어려워하는 낱말이 있으므로 자세히 설명해주도록 한다. m 버튼을 무리하게 조작하면 고장이 날 위험이 있으므로 수업 시작 부분에서 주의를 준다. m 활동지를 보고 어려워하는 학생에게는 영상자료를 접속하도록 안내한다. 평가 평가 유형 자기 평가

Chapter 4. LISTS

tiawPlot ac 사용방법

윈도우 프로그래밍의 개념

PathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.

Endpoint Protector - Active Directory Deployment Guide

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

Visual C++의 개요

JDK이클립스

Windows 8에서 BioStar 1 설치하기

Lab 3. 실습문제 (Single linked list)_해답.hwp

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

Microsoft PowerPoint - hci2-lecture11.ppt

<4D F736F F F696E74202D203036C0E520BBE7BFEBC0DA20C0CEC5CDC6E4C0CCBDBA205BC8A3C8AF20B8F0B5E55D>

볼륨 조절 아이콘 표시하기 만일 알림 영역에 볼륨 조절 아이콘이 표시되지 않았다면 아래의 방법을 따라합니다. 1> [시작] - [제어판] - [사운드 및 오디오 장치] 아이콘을 더블 클릭합니다. 2) [사운드 및 오디오 장치 등록 정보] 대화상자에서 [볼륨] 탭을 클릭

gnu-lee-oop-kor-lec10-1-chap10

F120L(JB)_UG_V1.0_ indd

Modal Window

Microsoft Word - hook3.doc


OOO Paint

슬라이드 1

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx

Microsoft PowerPoint - hci2-lecture11.ppt

MF Driver Installation Guide

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가

11장 포인터

MFC 프로그래밍

Microsoft PowerPoint - 09-CE-7-선과 도형

금오공대 컴퓨터공학전공 강의자료

PowerPoint Template

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

Convenience Timetable Design

Programming hwp

1. 매크로활성화체크홈페이지에서예제파일을직접다운받으신경우, 예제파일은매크로가포함된파일이므로상단에 [ 매크로활성화버튼 ] 을체크해주세요. 2. 옵션버튼편집하기 각옵션버튼을누를때마다, 선택된포탈사이트의커맨드버튼이나타나도록옵션버튼에 Click 이벤트명령문을입혀줍니다. 네이버

DAQMaster mobile

ThinkVantage Fingerprint Software

Visual Studio online Limited preview 간략하게살펴보기

Lab 4. 실습문제 (Circular singly linked list)_해답.hwp

Microsoft Word - LTL-XL RSC vers Nov. 08 _Korean Version_.doc

Microsoft PowerPoint - hci2-lecture1.ppt

API 매뉴얼

윈도우즈프로그래밍(1)

1아이패드(13~54)

<33372DC0A9B5B5BFECC7C1B7CEB1D7B7A1B9D62E687770>

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

인쇄하기, 내보내기, 이메일로 문서 보내기

Programming hwp

KNK_C_05_Pointers_Arrays_structures_summary_v02

Transcription:

메시지의종류및각메시지의 wparam, lparam 정보 ---------------------- Windows Message List ---------------------- WM_ACTIVE WM_GETFONT WM_MESUREITEM WM_QUERYENDSESSION WM_ACTIVATEAPP WM_GETMINMAXINFO WM_MENUCHAR WM_QUERYPALETTE WM_ASKCBFORMATNAME WM_GETTEXT WM_MENUSELECT WM_QUERYOPEN WM_CANCELMODE WM_GETTEXTLENGTH WM_MOUSEACTIVE WM_QUIT WM_CHANGECBCHAIN WM_HSCROLL WM_MOUSEMOVE WM_RBUTTONDBLCLK WM_CHAR WM_HSCROLLCLIPBOARD WM_MOVE WM_RBUTTONDOWN WM_CHARTOITEM WM_ICONERASEBKGND WM_NCACTIVE WM_RBUTTONUP WM_CHILDACTIVE WM_INITDIALOG WM_NCCALSSIZE WM_RENDERALLFORMAT WM_CLEAR WM_INITMENU WM_NCCREATE WM_RENDERFORMAT WM_CLOSE WM_INITMENUPOPUP WM_NCDESTROY WM_SETCURSOR WM_COMMAND WM_KEYDOWN WM_NCHITTEST WM_SETFOCUS WM_COMPACTING WM_KEYUP WM_NCLBUTTONDBLCLK WM_SETFONT WM_COMPAREITEM WM_KILLFOCUS WM_NCLBUTTONDOWN WM_SETREDRAW WM_COPY WM_LBUTTONDBLCLK WM_NCLBUTTONUP WM_SETTEXT WM_CREATE WM_LBUTTONDOWN WM_NCMBUTTONDBLCLK WM_SHOWWINDOW WM_CTLCOLOR WM_LBUTTONUP WM_NCMBUTTONDOWN WM_SIZE WM_CUT WM_MBUTTONDBLCLK WM_NCMBUTTONUP WM_SIZECLIPBOARD WM_DEADCHAR WM_MBUTTONDOWN WM_NCMOUSEMOVE WM_SPOOLERSTATUS WM_DELETEITEM WM_MBUTTONUP WM_NCPAINT WM_SYSCHAR WM_DESTROY WM_MDIACTIVE WM_NCRBUTTONDBLCLK WM_SYSCOLORCHANGE WM_DESTROYCLIPBOARD WM_MDICASCADE WM_NCRBUTTONDOWN WM_SYSCOMMAND WM_DEVMODECHANGE WM_MDICREATE WM_NCRBUTTONUP WM_SYSDEADCHAR WM_DRAWCLIPBOARD WM_MDIDESTROY WM_NEXTDLGCTL WM_SYSKEYDOWN WM_DRAWITEM WM_MDIGETACTIVE WM_PAINT WM_SYSKEYUP WM_ENABLE WM_MDIICONARRANGE WM_PAINTCLIPBOARD WM_TIMECHANGE WM_ENDSESSION WM_MDIMAXIMIZE WM_PAINTICON WM_TIMER WM_ENTERIDLE WM_MDINEXT WM_PALETTECHANGED WM_UNDO WM_ERASEBKGND WM_MDIRESTORE WM_PARENTNOTIFY WM_VKEYTOITEM WM_FONTCHANGE WM_MDISETMENU WM_PASTE WM_VSCROLL WM_GETDLGCODE WM_MDITILE WM_QUERYDRAGICON WM_VSCROLLCLIPBOARD WM_WININICHANGE -------------------------------- Description of Windows Message -------------------------------- ' WM_ACTIVE Private Const WM_ACTIVATE = &H6 윈도우가활성화또는비활성화되었을때발생.

0: 윈도우가비활성화되었을때 1: 윈도우가마우스클릭이외의다른방법으로활성화되었을때 2: 윈도우가마우스클릭으로활성화되었을때 윈도우의상태를나타내며, 윈도우가아이콘으로변했을경우 LOWORD는 0이아닌값이고, 0일경우는다음과같이 lparam 는 wparam 에의존한다. wparam 가 0인경우는 lparam 의 LOWORD는활성화된윈도우의핸들을가지고, wparam 가 0이아닌경우는lParam 의 LOWORD는비활성화된윈도우의핸들을가진다. ' WM_ACTIVATEAPP Private Const WM_ACTIVATEAPP = &H1C 현재활성화된윈도우가아닌다른어플리케이션에속한활성화된윈도우로보내려할때발생. 0이아닌경우는윈도우즈가윈도우를활성화시킬때이고, 0인경우는윈도우즈가윈도우를비활성화시킬때이다. 어플리케이션의태스크핸들값을가진다. 만약 가 0인경우는 의 LOWORD는비활성화된윈도우어플리케이션의태스크핸들값을가지고, 가 0이아닌경우는 의 LOWORD는활성화된윈도우어플리케이션의태스크핸들값을가진다. 이모든경우에 의 HIGHWORD의값은 ' WM_ASKCBFORMATNAME Private Const WM_ASKCBFORMATNAME = &H30C 클립보드의내용이표시되거나복사요구가있을때발생한다. 복사할최대바이트수가지정된다. 복사할데이터의포인터를가진다. ' WM_CANCELMODE Private Const WM_CANCELMODE = &H1F 어플리케이션이메시지박스를표시할때발생한다. ' WM_CHANGECBCHAIN Private Const WM_CHANGECBCHAIN = &H30D 윈도우가클립보드와연결될때발생한다. 클립보드와연결이되었으나지워진윈도우의핸들값을가진다. LOWORD에클립보드와연결된다른윈도우의핸들값을가진다. ' WM_CHAR Private Const WM_CHAR = &H102 WM_KEYUP이나 WM_KEYDOWN 메시지가발생했을때나타나는메시지로서키가눌리거나떼어질때발생한다. 해당키값을가진다. Bit 0-15: 반복되는횟수

BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우 Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용 BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0 으로지정 BIT 30 : 메시지를보내기전키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_CHARTOITEM Private Const WM_CHARTOITEM = &H2F WM_CHAR 메시지에대하여리스트박스에보내는메시지이다. 키값을가진다. LOWORD에는현재의카렛의위치값을가지고, HIGHWORD에는리스트박스의핸들값을가진다. ' WM_CHILDACTIVE Private Const WM_CHILDACTIVATE = &H22 Child 윈도우를움직였을때 Parent 윈도우에보내는메시지이며 ' WM_CLEAR Private Const WM_CLEAR = &H303 현재선택한아이템을삭제할때발생하며 ' WM_CLOSE Private Const WM_CLOSE = &H10 윈도우를닫았을때발생하며이때윈도우함수에서는 DestroyWindow 함수를불러사용자의확인을받는다. ' WM_COMMAND Private Const WM_COMMAND = &H111 사용자가메뉴를선택하였을때또는컨트롤윈도우에서 Parent윈도우로메시지를보내거나단축키를눌렀을때발생하며윈도우가아이콘으로되어있을때에도 'WM_COMMAND 메시지는발생한다. 메뉴아이템이나컨트롤 ID나액셀러레이터의 ID 값이들어감. 메뉴로부터받은메시지인경우는 LOWORD에 0이, 액셀러레이터에서받은메시지이면 HIGHWORD에는 1이, 컨트롤로부터받은메시지이면 HIGHWORD에는인식코드 (Notification Code) 가저장되고 LOWORD에는컨트롤윈도우의핸들값이저장되어있다. ' WM_COMPACTING Private Const WM_COMPACTING = &H41 어플리케이션이한정된시간동안많은메모리를차지하고있을때발생하는메시지로데스크의모든윈도우에전달된다. 어플리케이션이이메시지를받으면 GetNumTasks함수를이용하여사용하지않는메모리를윈도우즈에반납해야한다. 현재 CPU Time 값이저장. 사용하지않음.

' WM_COMPAREITEM Private Const WM_COMPAREITEM = &H39 콤보박스또는리스트박스내에새로운아이템을추가시킬때윈도우는어플리케이션에이메시지를전달하며보조인자에는아이템의상대적위치를담고있다. 사용하지않음 COMPAREITEMSTRUCT라는데이터구조의포인터를담고있다. ' WM_COPY Private Const WM_COPY = &H301 현재선택된텍스트를클립보드에보낼때사용한다. ' WM_CREATE Private Const WM_CREATE = &H1 윈도우가처음만들어질때발생하는메시지로 CreateWindow함수가실행될때윈도우 Procedure에게보낸준다. CreateWindow 함수의인수들이저장된데이터구조의포인터를가진다. ' WM_CTLCOLOR Private Const WM_CTLCOLORBTN = &H135 Private Const WM_CTLCOLORDLG = &H136 Private Const WM_CTLCOLOREDIT = &H133 Private Const WM_CTLCOLORLISTBOX = &H134 Private Const WM_CTLCOLORMSGBOX = &H132 Private Const WM_CTLCOLORSCROLLBAR = &H137 Private Const WM_CTLCOLORSTATIC = &H138 컨트롤박스또는메시지박스가그려질때 Parent윈도우로보내지는메시지이며 Parent 윈도우는 를사용하여컨트롤박스또는메시지박스의텍스트와배경색을지정한다. Child 윈도우의 hdc 핸들값을가진다. LOWORD에 Child윈도우의핸들값을가지고, HIGHWORD에는다음과같은값들을담고있다. CTLCOLOR_BTN: CTLCOLOR_DLG: CTLCOLOR_EDIT: CTLCOLOR_LISTBOX: CTLCOLOR_MSGBOX: CTLCOLOR_SCROLLBAR: CTLCOLOR_STATIC: 버튼컨트롤대화상자에디트컨트롤리스트박스메시지박스스크롤바스태틱컨트롤 ' WM_CUT Private Const WM_CUT = &H300 현재선택된텍스트를클립보드로보내고에디트컨트롤윈도우는지운다.

' WM_DEADCHAR Private Const WM_DEADCHAR = &H103 WM_KEYUP이나 WM_KEYDOWN 메시지가발생했을때나타나는메시지로써 Dead-key가눌리거나떨어질때발생. 보조파라미터 Dead-key 값을가짐 Bit 0-15: 반복되는횟수 BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우 Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용 BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0 으로지정 BIT 30 : 메시지를보내기전에키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_DELETEITEM Private Const WM_DELETEITEM = &H2D 리스트박스또는콤보박스가닫혀지거나 LB_DELETESTRING, LB_RESETCONTENT, CB_DELETESTRING, CB_RESETCONTENT 메시지에의해박스내의아이템이지워질때나타난다. 사용하지않음. 지워진리스트박스내의아이템에대한데이터구조체의포인터를가진다. ' WM_DESTROY Private Const WM_DESTROY = &H2 윈도우가닫혀질때 DestroyWindow 함수에의해 Parent 윈도우에보내진다. ' WM_DESTROYCLIPBOARD Private Const WM_DESTROYCLIPBOARD = &H307 클립보드의데이터내용이비었을때발생. 보조파라미터는사용하지않음. ' WM_DEVMODECHANGE Private Const WM_DEVMODECHANGE = &H1B 사용자가디바이스모드를바꾸었을때상위의모든윈도우들에게보내는메시지. 사용하지않음. win.ini 에지정된디바이스이름을가리키는포인터값을가짐. ' WM_DRAWCLIPBOARD Private Const WM_DRAWCLIPBOARD = &H308 클립보드의데이터내용이변경되었을때발생. 보조파라미터는사용하지않음.

' WM_DRAWITEM Private Const WM_DRAWITEM = &H2B 콤보박스나리스트박스, 메뉴의아이템이선택되어변경되어질필요가있을때발생. 사용하지않음. 다시그려질아이템의정보를담고있는데이터구조체의포인터를가짐. ' WM_ENABLE Private Const WM_ENABLE = &HA 윈도우가사용가능한상태또는불가능한상태가되었을때발생. 만약윈도우가사용가능한상태이면 0이고, 윈도우가사용불가능한상태이면 0이아닌값을가진다. ' WM_ENDSESSION Private Const WM_ENDSESSION = &H16 WM_QUERYENDSESSION에의해세션 (session) 이종료되었는지를나타낸다. 세션이종료한상태일때는 0이아닌값을가지고, 아니면 0의값을가진다. ' WM_ENTERIDLE Private Const WM_ENTERIDLE = &H121 메시지박스또는메뉴박스에서아이템을선택했을때발생하며현재시스템이 Idle상태인가를표시한다. MSGF_DIALOGBOX : 시스템이현재대화상자가나타난후 Idle 상태인경우 MSGF_MENU : 시스템이현재메뉴가나타난후 Idle 상태인경우 LOWORD는대화상자나메뉴의핸들값을가지면, HIGHWORD는사용하지않음. ' WM_ERASEBKGND Private Const WM_ERASEBKGND = &H14 윈도우의일부분이지워지거나크기를변경할때배경이지워지면발생한다. hdc 값을가진다. 사용되지않는다. ' WM_FONTCHANGE Private Const WM_FONTCHANGE = &H1D 폰트가변경될때발생하며데스크탑의모든윈도우에게전해지고, AddFontResource 또는 RemoveFontResource 함수에의해시스템으로부터폰트가추가되거나삭제된다. 어플리케이션이상위의모든윈도우에게폰트가변경되었음을알리기위해 SendMessage 함수를부른다.( 이함수의인수중 hwnd를 0xFFFF로지정한다. ) ' WM_GETDLGCODE Private Const WM_GETDLGCODE = &H87

컨트롤윈도우에서어플리케이션의입력함수에보낸다. ' WM_GETFONT Private Const WM_GETFONT = &H31 윈도우에텍스트를써넣기위해현재컨트롤이사용하고있는폰트를얻는다. ' WM_GETMINMAXINFO Private Const WM_GETMINMAXINFO = &H24 확대, 축소한윈도우의크기정보를가지고있다. 다음의정보를담고있는포인터배열을가리킨다. rgpt[0] rgpt[1] 윈도우의내부에서사용 윈도우의기본크기로서 가로크기는 (SM_CXSCREEN+2SM_CXFRAME) 으로결정되고 세로크기는 ( SM_CYSCREEN+2SM_CYFRAME) 으로결정된다. rgpt[2] 윈도우모서리를마우스클릭으로최대로크게변경했을때의 모서리위치를나타내며, 기본값으로는가로값이 SM_CXFRAME, 세로값이 SM_CYFRAME 값이지정된다. rgpt[3] 윈도우를최소화했을때의 Tracking 크기를나타내며, 가로는 SM_CXMINTRACK이, 세로는 SM_CYMINTRACK 값이지정된다. rgpt[4] 윈도우를최대화했을때의 Tracking 크기를나타내며, 가로는 (SM_CXSCREEN+ 2SM_CXFRAME) 으로지정되고, 세로는 (SM_CYSCREEN+2SM_CYFRAME) 으로지정된다. ' WM_GETTEXT Private Const WM_GETTEXT = &HD 컨트롤윈도우에서텍스트의내용을복사한다. 여기서텍스트는에디트컨트롤또는콤보박스컨트롤이면컨트롤의내용이, 리스트박스라면현재선택된아이템이, 버튼컨트롤이라면버튼이름이, 그외의윈도우라면윈도우의캡션내용을가리킨다. Null 문자를포함하여복사한텍스트의크기가저장된다. 복사한텍스트를가리키는버퍼의포인터가지정된다. ' WM_GETTEXTLENGTH Private Const WM_GETTEXTLENGTH = &HE 컨트롤윈도우에서복사한텍스트의길이가되돌려진다 (Null 문자포함 ). 여기서텍스트는에디트컨트롤또는콤보박스컨트롤이면컨트롤의내용이, 리스트박스라면현재선택된아이템이, 버튼컨트롤이라면버튼이름이, 그외의윈도우라면윈도우의캡션내용을가리킨다. ' WM_HSCROLL Private Const WM_HSCROLL = &H114 마우스버튼으로수평스크롤바를클릭했을경우에발생한다.

SB_LINEUP SB_LINEDOWN SB_PAGEUP SB_PAGEDOWN : 한줄위로이동 : 한줄아래로이동 : 한페이지위로이동 : 한페이지아래로이동 SB_THUMBPOSITION SB_THUMBTRACK : 절대위치로이동 : 마우스의드래그로이동한경우 SB_TOP SB_BOTTOM : 파일의처음 : 파일의끝 SB_ENDSCROLL : 이동정지 스크롤바컨트롤에의한메시지라면 의 HIGHWORD에는컨트롤윈도우의핸들이보관되며, 팝업 (Popup) 윈도우의스크롤바에의한메시지라면 HIGHWORD는사용하지않음. ' WM_HSCROLLCLIPBOARD Private Const WM_HSCROLLCLIPBOARD = &H30E 클립보드의수평스크롤바에어떤일이일어났을때발생. 클립보드의핸들이저장 HIGHWORD는사용되지않으나 LOWORD에는다음과같은값을가진다. SB_LINEUP SB_LINEDOWN SB_PAGEUP SB_PAGEDOWN : 한줄위로이동 : 한줄아래로이동 : 한페이지위로이동 : 한페이지아래로이동 SB_THUMBPOSITION : 절대위치로이동 (HIGHWORD 에위치값지정 ) SB_THUMBTRACK : 마우스의드래그로이동한경우 SB_TOP SB_BOTTOM : 파일의처음 : 파일의끝 SB_ENDSCROLL : 이동정지 ' WM_ICONERASEBKGND Private Const WM_ICONERASEBKGND = &H27 윈도우가아이콘이될때윈도우배경정보를아이콘에보내준다. 아이콘의 hdc 핸들값을가진다. ' WM_INITDIALOG Private Const WM_INITDIALOG = &H110 대화상자를초기화시킨다. 현재활성화되어있는대화상자의첫번째컨트롤아이템을가진다. 대화상자가 CreateDialogIndirectParam, CreateDialogParam, DialogBoxIndirectParam, DialogBoxParam 함수로생성이

되었다면 dwinitparam의값이저장되나그이외에는사용되지않는다. ' WM_INITMENU Private Const WM_INITMENU = &H116 마우스로메뉴바로이동했거나클릭또는메뉴키를누를때메뉴초기화를요구한다. 메뉴의핸들을가진다. 사용되지않는다. ' WM_INITMENUPOPUP Private Const WM_INITMENUPOPUP = &H117 팝업 (Popup) 메뉴가표시될때발생한다. 팝업메뉴의핸들값을가진다. LOWORD에는팝업메뉴의인덱스값을가지고,HIGHWORD에는팝업메뉴가시스템메뉴라면 0이아닌값이, 그외에는 0인값이지정된다. ' WM_KEYDOWN Private Const WM_KEYDOWN = &H100 키가눌렸을때발생한다. 가상키값이저장. 다음과같은값을가진다. Bit 0-15: 반복되는횟수 BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우 Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용 BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0 으로지정 BIT 30 : 메시지를보내기전키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_KEYUP Private Const WM_KEYUP = &H101 키가눌렸다가떼어질때발생한다. 가상키값이저장. 다음과같은값을가진다. Bit 0-15: 반복되는횟수 BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우 Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용 BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0 으로지정

BIT 30 : 메시지를보내기전키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_KILLFOCUS Private Const WM_KILLFOCUS = &H8 윈도우의입력포커스 (Focus) 를지울때 ( 즉, 현재의카렛이위치한문자를지울때발생. 입력포커스를받는윈도우의핸들값이지정. ' WM_LBUTTONDBLCLK Private Const WM_LBUTTONDBLCLK = &H203 마우스의왼쪽버튼이연속해서두번눌리는경우. 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_MBUTTON : 마우스의가운데버튼이눌림 MK_RBUTTON : 마우스의오른쪽버튼이눌림 MK_SHIFT : <Shift> 키가눌림 LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_LBUTTONDOWN Private Const WM_LBUTTONDOWN = &H201 마우스의왼쪽버튼이눌리는경우 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_MBUTTON : 마우스의가운데버튼이눌림 MK_RBUTTON : 마우스의오른쪽버튼이눌림 MK_SHIFT : <Shift> 키가눌림. LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_LBUTTONUP Private Const WM_LBUTTONUP = &H202 마우스의왼쪽버튼을눌렀다가떼는경우 다음키값을가짐 MK_CONTROL : 컨트롤키가눌린경우 MK_MBUTTON : 마우스의가운데버튼의경우 MK_RBUTTON : 마우스의오른쪽버튼의경우 MK_SHIFT : <Shift> 키가눌림. LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_MBUTTONDBLCLK

Private Const WM_MBUTTONDBLCLK = &H209 마우스의가운데버튼이연속해서두번눌리는경우 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_LBUTTON : 마우스의왼쪽버튼이눌림 MK_RBUTTON : 마우스의오른쪽버튼이눌림 MK_SHIFT : <Shift> 키가눌림. LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_MBUTTONDOWN Private Const WM_MBUTTONDOWN = &H207 마우스의가운데버튼이눌리는경우. 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_LBUTTON : 마우스의왼쪽버튼이눌림 MK_RBUTTON : 마우스의오른쪽버튼이눌림 MK_SHIFT : <Shift> 키가눌림. LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_MBUTTONUP Private Const WM_MBUTTONUP = &H208 마우스의가운데버튼을눌렀다가떼는경우. 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_LBUTTON : 마우스의왼쪽버튼의경우 MK_RBUTTON : 마우스의오른쪽버튼의경우 MK_SHIFT : <Shift> 키가눌림. LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표의값이지정. ' WM_MDIACTIVE Private Const WM_MDIACTIVATE = &H222 어플리케이션이또다른 MDI Child 윈도우가열렸다는것을 MDI클라이언트윈도우에알리는메시지. 어플리케이션이 MDI클라이언트윈도우에보낼때는활성화된 MDIChild 윈도우의핸들을가지며, 클라이언트에서 Child 윈도우로보낼때에는 Child윈도우가활성화되어있다면 TRUE값을, Child윈도우가활성화되지않은경우는 FALSE값을가진다. 어플리케이션이 MDI클라이언트윈도우에보낼때는 NULL 값을, 클라이언트에서 Child윈도우로보낼때에는 HIGHWORD에는활성화되지않은윈도우의핸들을, LOWORD에는활성화된윈도우의핸들값을가진다. ' WM_MDICASCADE Private Const WM_MDICASCADE = &H227

MDI클라이언트윈도우내의 Child윈도우들을정돈시킬때발생. ' WM_MDICREATE Private Const WM_MDICREATE = &H220 MDI클라이언트윈도우내의 Child윈도우를생성한다. MDICREATESTRUCT 데이터구조체를가리키는 long 포인터가지정된다. ' WM_MDIDESTROY Private Const WM_MDIDESTROY = &H221 MDI클라이언트윈도우로 Child윈도우가닫혔다는정보를보낸다. 보조파라미터 Child윈도우핸들을가진다. ' WM_MDIGETACTIVE Private Const WM_MDIGETACTIVE = &H229 Child윈도우가아이콘으로되어있는가의여부를나타내는플래그값에따라현재활성화되어있는 MDIChild윈도우를돌려준다. ' WM_MDIICONARRANGE Private Const WM_MDIICONARRANGE = &H228 모든아이콘을재배치하기위해 MDI클라이언트윈도우에게알린다. ' WM_MDIMAXIMIZE Private Const WM_MDIMAXIMIZE = &H225 아이콘을윈도우화시키기위해 MDI클라이언트윈도우에게보낸다. Child윈도우의윈도우 ID를가진다. ' WM_MDINEXT Private Const WM_MDINEXT = &H224 가려졌던다음의 MDI Child윈도우를활성화시킨다. ' WM_MDIRESTORE Private Const WM_MDIRESTORE = &H223 윈도우화또는아이콘화된 MDI Child윈도우를복구시킨다. 보조파라미터 Child윈도우의윈도우 ID를가진다.

' WM_MDISETMENU Private Const WM_MDISETMENU = &H230 MDI의메뉴를바꾼다. LOWORD에새로운프레임윈도우의메뉴핸들을, HIGHWORD에는새로운윈도우의팝업메뉴를가진다. 가 0 이면바뀌는메뉴는없다. ' WM_MDITILE Private Const WM_MDITILE = &H226 Tile형식으로 MDI클라이언트윈도우의모든 Child윈도우를재배열한다. ' WM_MESUREITEM Private Const WM_MEASUREITEM = &H2C 컨트롤윈도우가생성될때콤보박스, 리스트박스, 메뉴아이템의소유자에게보낸다. 소유자 (Owner) 는이메시지를받으면 에 MESUREITEM 데이터포인터를넣는다. MESUREITEMSTRUCT 데이터구조체를가리키는 long 포인터를가진다. ' WM_MENUCHAR Private Const WM_MENUCHAR = &H120 사용자가메뉴의문자키를눌렀을때에발생. ASCII문자가저장. HIGHWORD에는선택된메뉴핸들이들어가는데, 팝업메뉴인경우는 LOWORD에 MF_POPUP 플래그가저장되고, 시스템메뉴라면 MF_SYSMENU 플래그값이들어간다. ' WM_MENUSELECT Private Const WM_MENUSELECT = &H11F 메뉴아이템을선택했을때발생. 메뉴아이템이선택되었다면메뉴아이템 ID를담고, 팝업메뉴가선택되었다면팝업메뉴의핸들을담고있다. HIGHWORD에는 LOWORD와관련된메뉴를지정하며, LOWORD에는다음과같은플래그를포함한다. MF_BITMAP MF_CHECKED MF_DISABLED MF_GRAYED : 비트맵아이템인경우 : 선택된아이템인경우 : Disable된아이템의경우 : Gray색으로표시된아이템일경우 MF_MOUSESELECT : 마우스로선택된아이템인경우 MF_OWNERDRAW : Owner-Draw 아이템인경우

MF_POPUP : 팝업메뉴를포함하는아이템일경우 MF_SYSMENU : 시스템메뉴를포함하는아이템인경우 ' WM_MOUSEACTIVE Private Const WM_MOUSEACTIVATE = &H21 마우스가비활성화되어있는윈도우에서마우스의버튼을눌렀을경우에발생 활성화되어있는최상의윈도우의핸들을가진다. LOWORD에는 Hit-test Area Code 값을가지고, HIGHWORD에는마우스메시지번호를가진다. ' WM_MOUSEMOVE Private Const WM_MOUSEMOVE = &H200 마우스를이동하였을때발생. 가상키가눌렸는지아닌지를나타내는다음과같은값을가짐. MK_CONTROL : 컨트롤키가눌렸을경우 1로지정. MK_LBUTTON : 마우스의왼쪽버튼이눌렸을경우 1로지정. MK_MBUTTON : 마우스의가운데버튼이눌렸을경우 1로지정. MK_RBUTTON : 마우스의오른쪽버튼이눌렸을경우 1로지정 MK_SHIFT : <Shift> 키가눌림. LOWORD에는 x좌표를, HIGHWORD에는 y좌표의값을가진다. 이좌표계는윈도우의좌측상단점이기준이다. ' WM_MOVE Private Const WM_MOVE = &H3 윈도우를이동하였을때발생. 윈도우내클라이언트영역의새로운좌측최상단점의위치를가진다. LOWORD에는 x좌표가, HIGHWORD에는 y좌표가들어간다. ' WM_NCACTIVE Private Const WM_NCACTIVATE = &H86 윈도우가활성화되었나아닌가를알고싶을때발생. 캡션바나아이콘이활성화되어있다면 0이아닌값이, 그렇지않다면 0이들어있다. ' WM_NCCALSSIZE Private Const WM_NCCALCSIZE = &H83 윈도우내클라이언트영역의크기를구하고자할때발생. 윈도우의스크린좌표값을포함하는 RECT 데이터구조체의포인터값을가진다.

' WM_NCCREATE Private Const WM_NCCREATE = &H81 윈도우가처음생성될때 'WM_CREATE 메시지보다먼저발생. 처음생성이될윈도우의핸들값을가진다. 윈도우의 CREATESTRUCT 데이터구조체를가리키는포인터를가지고있다. ' WM_NCDESTROY Private Const WM_NCDESTROY = &H82 비작업영역이소멸될때발생하며그윈도우가가지고있는메모리블록을반납해야한다. 이메시지는 Destroy Window 함수에의해발생한다. ' WM_NCHITTEST Private Const WM_NCHITTEST = &H84 현재커서가위치한윈도우로보내는메시지로, 마우스가움직일때마다발생. LOWORD에는 x좌표를, HIGHWORD에는 y좌표값을가진다. ' WM_NCLBUTTONDBLCLK Private Const WM_NCLBUTTONDBLCLK = &HA3 비작업영역에서마우스의왼쪽버튼이더블클릭되었을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NCLBUTTONDOWN Private Const WM_NCLBUTTONDOWN = &HA1 비작업영역에서마우스의왼쪽버튼이눌렸을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NCLBUTTONUP Private Const WM_NCLBUTTONUP = &HA2 비작업영역에서마우스의왼쪽버튼이떼어졌을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다.

' WM_NCMBUTTONDBLCLK Private Const WM_NCMBUTTONDBLCLK = &HA9 비작업영역에서마우스의가운데버튼이더블클릭되었을경우발생 WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NCMBUTTONDOWN Private Const WM_NCMBUTTONDOWN = &HA7 비작업영역에서마우스의가운데버튼이눌렸을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NCMBUTTONUP Private Const WM_NCMBUTTONUP = &HA8 비작업영역에서마우스의가운데버튼이떼어졌을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NCMOUSEMOVE Private Const WM_NCMOUSEMOVE = &HA0 비작업영역에서마우스를이동했을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NCPAINT Private Const WM_NCPAINT = &H85 비작업영역의프레임을다시그리고자할때발생. ' WM_NCRBUTTONDBLCLK Private Const WM_NCRBUTTONDBLCLK = &HA6 비작업영역에서마우스의오른쪽버튼이더블클릭되었을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이

기준이다. ' WM_NCRBUTTONDOWN Private Const WM_NCRBUTTONDOWN = &HA4 비작업영역에서마우스의오른쪽버튼이눌렸을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은 ' WM_NCRBUTTONUP Private Const WM_NCRBUTTONUP = &HA5 비작업영역에서마우스의오른쪽버튼이떼어졌을경우발생. WM_NCHITTEST에의해되돌려지는코드값을가진다. 현재커서의 x,y좌표값을포함한 POINT 데이터구조체의포인터값을가진다. 이좌표값은윈도우의좌측최상단점이기준이다. ' WM_NEXTDLGCTL Private Const WM_NEXTDLGCTL = &H28 컨트롤포커스 (Focus) 를바꿀때대화상자의윈도우함수에보낸다. lparam 가 0이아니면포커스를받는컨트롤윈도우를지정하고, 0인경우는포커스를받는 Tabstop 형태의이전또는다음컨트롤윈도우가포커스를받고, 아니면 Tabstop 형태이전의컨트롤윈도우가포커스를받는다. 만약 0이아닌경우 wparam 는포커스를받는컨트롤윈도우핸들을가지고, 아니면 wparam 는포커스를받는 Tabstop 형태이전또는다음컨트롤윈도우인지를나타내는플래그값을가진다. ' WM_PAINT Private Const WM_PAINT = &HF 윈도우를다시그릴경우. ' WM_PAINTCLIPBOARD Private Const WM_PAINTCLIPBOARD = &H309 클립보드의클라이언트영역의일부또는전부를다시그릴필요가있을때발생. 클립보드의핸들값을가진다. LOWORD에는다시칠해질영역의 PAINTSTRUCT 데이터구조체를가리키며 HIGHWORD는 ' WM_PAINTICON Private Const WM_PAINTICON = &H26 아이콘이나타날때아이콘으로된윈도우에보낸다. ' WM_PALETTECHANGED Private Const WM_PALETTECHANGED = &H311 입력포커스를가지고윈도우가팔레트를바꿀때모든윈도우들에게이메시지를보낸다.

시스템팔레트를변화시키려는윈도우의핸들값을가진다. ' WM_PARENTNOTIFY Private Const WM_PARENTNOTIFY = &H210 Child 윈도우가생성되거나소멸될때, 그리고마우스커서가 Child 윈도우상에서마우스버튼을누르면발생되어 Parent 윈도우에게로보낸다. 어떤사건이발생되었는지 Parent 윈도우에게다음의내용을통해알려준다. WM_CREATE WM_DESTROY : Child 윈도우가생성됨 : Child 윈도우가소멸됨 WM_LBUTTONDOWN : 마우스의왼쪽버튼이눌림 WM_MBUTTONDOWN : 마우스의가운데버튼이눌림 WM_RBUTTONDOWN : 마우스의오른쪽버튼이눌림 LOWORD에는 Child 윈도우의핸들이, HIGHWORD에는 Child 윈도우의 ID가저장된다. ' WM_PASTE Private Const WM_PASTE = &H302 현재커서위치에클립보드의내용을컨트롤윈도우에추가삽입한다. ' WM_QUERYDRAGICON Private Const WM_QUERYDRAGICON = &H37 아이콘이현재마우스로드래그되었을때발생. ' WM_QUERYENDSESSION Private Const WM_QUERYENDSESSION = &H11 어플리케이션에서세션 (Session) 의종료요구가있을때발생. ' WM_QUERYPALETTE Private Const WM_QUERYNEWPALETTE = &H30F 입력포커스가새로운칼라팔레트를변화시켰을때발생. ' WM_QUERYOPEN Private Const WM_QUERYOPEN = &H13 아이콘에서윈도우로바꾸라는사용자의요구가있을때발생. ' WM_QUIT Private Const WM_QUIT = &H12 어플리케이션이종료요구가있을때어플리케이션이 PostQuitMessage 함수를부를때발생. Exit 코드를담고있음.

' WM_RBUTTONDBLCLK Private Const WM_RBUTTONDBLCLK = &H206 마우스의오른쪽버튼이연속해서두번눌리는경우. 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_MBUTTON : 마우스의가운데버튼이눌림 MK_LBUTTON : 마우스의왼쪽버튼이눌림 MK_SHIFT : <Shift> 키가눌림 LOWORD 에커서의 x 좌표값이, HIGHWORD 에는커서의 y 좌표값이지정. ' WM_RBUTTONDOWN Private Const WM_RBUTTONDOWN = &H204 마우스의오른쪽버튼이눌리는경우. 다음키값을가짐. MK_CONTROL : 컨트롤키가눌린경우 MK_MBUTTON : 마우스의가운데버튼이눌림 MK_LBUTTON : 마우스의왼쪽버튼이눌림 MK_SHIFT : <Shift> 키가눌림 LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_RBUTTONUP Private Const WM_RBUTTONUP = &H205 마우스의오른쪽버튼이눌렸다가떼어지는경우. 다음키값을가짐. MK_CONTROL : 컨트롤키의경우 MK_MBUTTON : 마우스의가운데버튼의경우 MK_LBUTTON : 마우스의왼쪽버튼의경우 MK_SHIFT : <Shift> 키가눌림 LOWORD에커서의 x좌표값이, HIGHWORD에는커서의 y좌표값이지정. ' WM_RENDERALLFORMAT Private Const WM_RENDERALLFORMATS = &H306 어플리케이션과클립보드가열려있을때어플리케이션이소멸되면클립보드가속한상위의어플리케이션에보내는메시지로, ' WM_RENDERFORMAT Private Const WM_RENDERFORMAT = &H305 마지막으로복사된데이터의형식을클립보드에서가져올필요가있을때발생.

데이터의형식이지정된다. ' WM_SETCURSOR Private Const WM_SETCURSOR = &H20 윈도우내에서커서의이동이있을때발생. 현재의커서가놓여진윈도우의핸들을가지고있다. LOWORD에 Hit-test 코드를가지고, HIGHWORD에는마우스메시지번호를가지고있다. ' WM_SETFOCUS Private Const WM_SETFOCUS = &H7 윈도우가입력포커스를얻고자할때. 입력포커스를잃어버린윈도우의핸들을가진다. ' WM_SETFONT Private Const WM_SETFONT = &H30 컨트롤에텍스트를써놓을때폰트를지정한다. 폰트의핸들을가지고있으나 NULL인경우는시스템폰트를사용. 새로지정된폰트를사용할지의여부를구한다. 변경된폰트를사용했다면 TRUE값을, 아니면 FALSE값을가진다. ' WM_SETREDRAW Private Const WM_SETREDRAW = &HB 윈도우가다시그려질지에대한허용여부를알고자할때발생. 다시그릴지를나타내는플래그의상태가저장되어있으며, 0 이아니면다시그리고 0일경우는다시그리지않아도된다. ' WM_SETTEXT Private Const WM_SETTEXT = &HC 윈도우에텍스트를써넣을때발생. null을포함한문자열의포인터를가지고있다. ' WM_SHOWWINDOW Private Const WM_SHOWWINDOW = &H18 윈도우가가려지거나보여질때발생. 윈도우가보이게하는지에대한상태여부를가지고있으며윈도우를보여지게할경우는 0이아닌값을, 윈도우가가려

진경우는 0의값을가진다. ShowWindow 함수에의해발생한메시지이면 0의값을, 아니면다음값을가진다. SW_PARENTCLOSING : Parent 윈도우가닫혀지거나팝업윈도우가가려질때 SW_PARENTTOPENING : Parent 윈도우가열리거나팝업윈도우가보여질때 ' WM_SIZE Private Const WM_SIZE = &H5 윈도우의크기변화요구가있을때발생. 사용자가윈도우의크기를조절하면윈도우즈는조절된크기로만들어놓고다음과같은와함께윈도우함수로보낸다. 다음과같은재조정요구값이들어가있다. SIZEFULLSCREEN : 윈도우가최대화되었을때 ( 또는윈도우가열렸을때 ) SIZEICONIC : 윈도우가최소화되었을때 ( 또는윈도우가아이콘으로되었을때 ) SIZEZOOMHIDE : 다른윈도우가최대화되었을때발생하며모든팝업윈도우에게보낸다. SIZEZOOMSHOW : 다른윈도우가이전의크기로복구되었을때발생하며모든팝업윈도우에게보낸다. LOWORD에는윈도우의클라이언트영역의새로변경된폭이, HIGHWORD에는높이가들어가있다. ' WM_SIZECLIPBOARD Private Const WM_SIZECLIPBOARD = &H30B 클립보드의크기변화요구가있을때. 클립보드인가를나타낸다. LOWORD에 RECT 데이터구조체를지정하고, HIGHWORD는 ' WM_SPOOLERSTATUS Private Const WM_SPOOLERSTATUS = &H2A 프린트큐에인쇄할데이터를추가하거나삭제할때발생하며, 프린트매니저에서가져오는메시지. SP_JOPSTATUS로지정된다. LOWORD에는프린터큐에인쇄할작업의수가, HIGHWORD는 ' WM_SYSCHAR Private Const WM_SYSCHAR = &H106 시스템키가눌렸을때. 시스템메뉴의 ASCII 값이들어가있다. 다음과같은값을가진다. Bit 0-15: 반복되는횟수 BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우 Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용

BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0으로지정 BIT 30 : 메시지를보내기전키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_SYSCOLORCHANGE Private Const WM_SYSCOLORCHANGE = &H15 하나이상의시스템칼라를바꾸려할때발생. 시스템칼라가변경되면상위의모든윈도우에이메시지가전달된다. ' WM_SYSCOMMAND Private Const WM_SYSCOMMAND = &H112 사용자가시스템메뉴를선택하거나메뉴박스의최대화, 최소화버튼을선택한경우발생. 다음값중의하나를가진다. SC_COLOR SC_HSCROLL SC_KEYMENU SC_MAXIMIZE SC_MINIMIZE : 윈도우가닫힐때 : 수평스크롤이일어날때 : 키보드를눌러메뉴를얻어올때 : 윈도우가최대화되었을때 : 윈도우가최소화되었을때 SC_MOUSEMENU : 마우스클릭으로메뉴를가져올때 SC_MOVE : 윈도우를이동했을때 SC_NEXTWINDOW : 다음윈도우로옮겨갈때 SC_PREVWINDOW : 이전윈도우로옮겨갈때 SC_RESTORE : 이전의좌표값을보관 SC_SIZE SC_VSCROLL : 윈도우를크기를알려할때 : 수직스크롤이일어날때 마우스에의해메뉴가선택된경우에발생하며시스템메뉴의좌표값을가진다. ' WM_SYSDEADCHAR Private Const WM_SYSDEADCHAR = &H107 Deadkey가사용되었을때발생. Deadkey 값이저장. LOWORD에는눌러진키의반복횟수가, HIGHWORD에는자동반복횟수가저장되어있다. ' WM_SYSKEYDOWN Private Const WM_SYSKEYDOWN = &H104 <ALT> 키와어떤키가눌린경우발생. 눌려진키의가상코드값이저장된다. 다음과같은값을가진다. Bit 0-15: 반복되는횟수 BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우

Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용 BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0 으로지정 BIT 30 : 메시지를보내기전키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_SYSKEYUP Private Const WM_SYSKEYUP = &H105 <ALT> 키와어떤키가동시에눌려진키가떼어질경우발생. 떼어진키의가상코드값이저장된다. 다음과같은코드값을가진다. Bit 0-15: 반복되는횟수 BIT 16-23: 스캔코드 ( 키보드가눌린것을표시하는비트열 ) 로사용 BIT 24 : 확장키보드를사용할경우 Bit 25-26: 사용하지않음 Bit 27-28: 윈도우즈가사용 BIT 29 : <ALT> 키가눌린경우는 1, 그렇지않으면 0 으로지정 BIT 30 : 메시지를보내기전키가눌리면 1, 떼어지면 0 BIT 31 : 키가눌리면 0, 떼어지면 1 ' WM_TIMECHANGE Private Const WM_TIMECHANGE = &H1E 어플리케이션에서시스템의시간이변경되었을경우에발생하며상위의모든윈도우에전달된다. ' WM_TIMER Private Const WM_TIMER = &H113 주어진시간이경과되었거나제한시간이되었을경우발생한다. 타이머의 ID값이저장된다. NULL이아니면윈도우함수내로 WM_TIMER를보내는것이아니라윈도우즈가타이머루틴을콜백함수를이용하여직접부른다. ' WM_UNDO Private Const WM_UNDO = &H304 가장최근에동작한기능을원래대로복구시킨다. ' WM_VKEYTOITEM Private Const WM_VKEYTOITEM = &H2E 리스트박스에서키입력이있을때발생. 누른키의가상키코드값이저장. HIGHWORD에는현재의카렛위치가, LOWORD에는리스트박스의핸들이저장. ' WM_VSCROLL

Private Const WM_VSCROLL = &H115 마우스로수직스크롤바를클릭했을때발생. 다음과같은값중의하나를가진다. SB_LINEUP SB_LINEDOWN SB_PAGEUP : 한줄위로이동 : 한줄아래로이동 : 한페이지위로이동 SB_PAGEDOWN : 한페이지아래로이동 SB_THUMBPOSITION : 절대위치로이동 SB_THUMBTRACK : 마우스의드래그로이동한경우 SB_TOP SB_BOTTOM : 파일의처음 : 파일의끝 SB_ENDSCROLL : 이동정지 스크롤바컨트롤에의한메시지라면 의 HIGHWORD에는컨트롤윈도우의핸들이보관되며, 팝업 (Popup) 윈도우의스크롤바에의한메시지라면 HIGHWORD는사용하지않음. ' WM_VSCROLLCLIPBOARD Private Const WM_VSCROLLCLIPBOARD = &H30A 클립보드의수직스크롤바에어떤일이일어났을때발생 클립보드의핸들이저장. HIGHWORD는사용되지않으나 LOWORD는다음과같은값을가진다. SB_LINEUP SB_LINEDOWN SB_PAGEUP : 한줄위로이동 : 한줄아래로이동 : 한페이지위로이동 SB_PAGEDOWN : 한페이지아래로이동 SB_THUMBPOSITION : 절대위치로이동 SB_THUMBTRACK : 마우스의드래그로이동한경우 SB_TOP SB_BOTTOM : 파일의처음 : 파일의끝 SB_ENDSCROLL : 이동정지 ' WM_WININICHANGE Private Const WM_WININICHANGE = &H1A 어플리케이션이시스템파일인 <WIN.INI> 를변경했을때발생하며모든윈도우에전달된다. 변경시킨부분의스트링포인터를가진다. ----------------------- Message Constant List

----------------------- 'A Private Const WM_ACTIVATE = &H6 Private Const WM_ACTIVATEAPP = &H1C Private Const WM_ASKCBFORMATNAME = &H30C 'C Private Const WM_CANCELJOURNAL = &H4B Private Const WM_CANCELMODE = &H1F Private Const WM_CHANGECBCHAIN = &H30D Private Const WM_CHAR = &H102 Private Const WM_CHARTOITEM = &H2F Private Const WM_CHILDACTIVATE = &H22 Private Const WM_CHOOSEFONT_GETLOGFONT = (WM_USER + 1) Private Const WM_CHOOSEFONT_SETFLAGS = (WM_USER + 102) Private Const WM_CHOOSEFONT_SETLOGFONT = (WM_USER + 101) Private Const WM_CLEAR = &H303 Private Const WM_CLOSE = &H10 Private Const WM_COMMAND = &H111 Private Const WM_COMMNOTIFY = &H44 ' no longer suported Private Const WM_COMPACTING = &H41 Private Const WM_COMPAREITEM = &H39 Private Const WM_CONVERTREQUESTEX = &H108 Private Const WM_COPY = &H301 Private Const WM_COPYDATA = &H4A Private Const WM_CREATE = &H1 Private Const WM_CTLCOLORBTN = &H135 Private Const WM_CTLCOLORDLG = &H136 Private Const WM_CTLCOLOREDIT = &H133 Private Const WM_CTLCOLORLISTBOX = &H134 Private Const WM_CTLCOLORMSGBOX = &H132 Private Const WM_CTLCOLORSCROLLBAR = &H137 Private Const WM_CTLCOLORSTATIC = &H138 Private Const WM_CUT = &H300 'D Private Const WM_DDE_ACK = (WM_DDE_FIRST + 4) Private Const WM_DDE_ADVISE = (WM_DDE_FIRST + 2) Private Const WM_DDE_DATA = (WM_DDE_FIRST + 5) Private Const WM_DDE_EXECUTE = (WM_DDE_FIRST + 8) Private Const WM_DDE_FIRST = &H3E0 Private Const WM_DDE_INITIATE = (WM_DDE_FIRST) Private Const WM_DDE_LAST = (WM_DDE_FIRST + 8) Private Const WM_DDE_POKE = (WM_DDE_FIRST + 7) Private Const WM_DDE_REQUEST = (WM_DDE_FIRST + 6)

Private Const WM_DDE_TERMINATE = (WM_DDE_FIRST + 1) Private Const WM_DDE_UNADVISE = (WM_DDE_FIRST + 3) Private Const WM_DEADCHAR = &H103 Private Const WM_DELETEITEM = &H2D Private Const WM_DESTROY = &H2 Private Const WM_DESTROYCLIPBOARD = &H307 Private Const WM_DEVMODECHANGE = &H1B Private Const WM_DRAWCLIPBOARD = &H308 Private Const WM_DRAWITEM = &H2B Private Const WM_DROPFILES = &H233 'E Private Const WM_ENABLE = &HA Private Const WM_ENDSESSION = &H16 Private Const WM_ENTERIDLE = &H121 Private Const WM_ENTERMENULOOP = &H211 Private Const WM_ERASEBKGND = &H14 Private Const WM_EXITMENULOOP = &H212 'F Private Const WM_FONTCHANGE = &H1D 'G Private Const WM_GETDLGCODE = &H87 Private Const WM_GETFONT = &H31 Private Const WM_GETHOTKEY = &H33 Private Const WM_GETMINMAXINFO = &H24 Private Const WM_GETTEXT = &HD Private Const WM_GETTEXTLENGTH = &HE 'H Private Const WM_HOTKEY = &H312 Private Const WM_HSCROLL = &H114 Private Const WM_HSCROLLCLIPBOARD = &H30E 'I Private Const WM_ICONERASEBKGND = &H27 Private Const WM_IME_CHAR = &H286 Private Const WM_IME_COMPOSITION = &H10F Private Const WM_IME_COMPOSITIONFULL = &H284 Private Const WM_IME_CONTROL = &H283 Private Const WM_IME_ENDCOMPOSITION = &H10E Private Const WM_IME_KEYDOWN = &H290 Private Const WM_IME_KEYLAST = &H10F Private Const WM_IME_KEYUP = &H291 Private Const WM_IME_NOTIFY = &H282 Private Const WM_IME_SELECT = &H285 Private Const WM_IME_SETCONTEXT = &H281

Private Const WM_IME_STARTCOMPOSITION = &H10D Private Const WM_INITDIALOG = &H110 Private Const WM_INITMENU = &H116 Private Const WM_INITMENUPOPUP = &H117 'K Private Const WM_KEYDOWN = &H100 Private Const WM_KEYFIRST = &H100 Private Const WM_KEYLAST = &H108 Private Const WM_KEYUP = &H101 Private Const WM_KILLFOCUS = &H8 'L Private Const WM_LBUTTONDBLCLK = &H203 Private Const WM_LBUTTONDOWN = &H201 Private Const WM_LBUTTONUP = &H202 'M Private Const WM_MBUTTONDBLCLK = &H209 Private Const WM_MBUTTONDOWN = &H207 Private Const WM_MBUTTONUP = &H208 Private Const WM_MDIACTIVATE = &H222 Private Const WM_MDICASCADE = &H227 Private Const WM_MDICREATE = &H220 Private Const WM_MDIDESTROY = &H221 Private Const WM_MDIGETACTIVE = &H229 Private Const WM_MDIICONARRANGE = &H228 Private Const WM_MDIMAXIMIZE = &H225 Private Const WM_MDINEXT = &H224 Private Const WM_MDIREFRESHMENU = &H234 Private Const WM_MDIRESTORE = &H223 Private Const WM_MDISETMENU = &H230 Private Const WM_MDITILE = &H226 Private Const WM_MEASUREITEM = &H2C Private Const WM_MENUCHAR = &H120 Private Const WM_MENUSELECT = &H11F Private Const WM_MOUSEACTIVATE = &H21 Private Const WM_MOUSEFIRST = &H200 Private Const WM_MOUSELAST = &H209 Private Const WM_MOUSEMOVE = &H200 Private Const WM_MOVE = &H3 'N Private Const WM_NCACTIVATE = &H86 Private Const WM_NCCALCSIZE = &H83 Private Const WM_NCCREATE = &H81 Private Const WM_NCDESTROY = &H82

Private Const WM_NCHITTEST = &H84 Private Const WM_NCLBUTTONDBLCLK = &HA3 Private Const WM_NCLBUTTONDOWN = &HA1 Private Const WM_NCLBUTTONUP = &HA2 Private Const WM_NCMBUTTONDBLCLK = &HA9 Private Const WM_NCMBUTTONDOWN = &HA7 Private Const WM_NCMBUTTONUP = &HA8 Private Const WM_NCMOUSEMOVE = &HA0 Private Const WM_NCPAINT = &H85 Private Const WM_NCRBUTTONDBLCLK = &HA6 Private Const WM_NCRBUTTONDOWN = &HA4 Private Const WM_NCRBUTTONUP = &HA5 Private Const WM_NEXTDLGCTL = &H28 Private Const WM_NULL = &H0 'O Private Const WM_OTHERWINDOWCREATED = &H42 ' no longer suported Private Const WM_OTHERWINDOWDESTROYED = &H43 ' no longer suported 'P Private Const WM_PAINT = &HF Private Const WM_PAINTCLIPBOARD = &H309 Private Const WM_PAINTICON = &H26 Private Const WM_PALETTECHANGED = &H311 Private Const WM_PALETTEISCHANGING = &H310 Private Const WM_PARENTNOTIFY = &H210 Private Const WM_PASTE = &H302 Private Const WM_PENWINFIRST = &H380 Private Const WM_PENWINLAST = &H38F Private Const WM_POWER = &H48 Private Const WM_PSD_ENVSTAMPRECT = (WM_USER + 5) Private Const WM_PSD_FULLPAGERECT = (WM_USER + 1) Private Const WM_PSD_GREEKTEXTRECT = (WM_USER + 4) Private Const WM_PSD_MARGINRECT = (WM_USER + 3) Private Const WM_PSD_MINMARGINRECT = (WM_USER + 2) Private Const WM_PSD_PAGESETUPDLG = (WM_USER) Private Const WM_PSD_YAFULLPAGERECT = (WM_USER + 6) 'Q Private Const WM_QUERYDRAGICON = &H37 Private Const WM_QUERYENDSESSION = &H11 Private Const WM_QUERYNEWPALETTE = &H30F Private Const WM_QUERYOPEN = &H13 Private Const WM_QUEUESYNC = &H23 Private Const WM_QUIT = &H12 'R

Private Const WM_RBUTTONDBLCLK = &H206 Private Const WM_RBUTTONDOWN = &H204 Private Const WM_RBUTTONUP = &H205 Private Const WM_RENDERALLFORMATS = &H306 Private Const WM_RENDERFORMAT = &H305 'S Private Const WM_SETCURSOR = &H20 Private Const WM_SETFOCUS = &H7 Private Const WM_SETFONT = &H30 Private Const WM_SETHOTKEY = &H32 Private Const WM_SETREDRAW = &HB Private Const WM_SETTEXT = &HC Private Const WM_SHOWWINDOW = &H18 Private Const WM_SIZE = &H5 Private Const WM_SIZECLIPBOARD = &H30B Private Const WM_SPOOLERSTATUS = &H2A Private Const WM_SYSCHAR = &H106 Private Const WM_SYSCOLORCHANGE = &H15 Private Const WM_SYSCOMMAND = &H112 Private Const WM_SYSDEADCHAR = &H107 Private Const WM_SYSKEYDOWN = &H104 Private Const WM_SYSKEYUP = &H105 'T Private Const WM_TIMECHANGE = &H1E Private Const WM_TIMER = &H113 'U Private Const WM_UNDO = &H304 Private Const WM_USER = &H400 'V Private Const WM_VKEYTOITEM = &H2E Private Const WM_VSCROLL = &H115 Private Const WM_VSCROLLCLIPBOARD = &H30A 'W Private Const WM_WINDOWPOSCHANGED = &H47 Private Const WM_WINDOWPOSCHANGING = &H46 Private Const WM_WININICHANGE = &H1A