오토핫키 강좌 11강 - 비활성마우스, 비활성키보드
ControlClick, ControlSend, PostMessage, SendMessage
비활성이란?
컴퓨터 기억장치 내에 로드되었지만 아직 실행되고 있지 않은 작업을 비활성이라고 합니다.
비활성 프로그램을 키보드입력과 마우스동작을 할 수 있습니다.
예를들면 인터넷과 메모장을 실행 시켜놨습니다.
인터넷을 할땐 인터넷은 활성이고, 메모장은 비활성입니다.
인터넷을 하는 동안에 메모장에 글을 작성하거나 클릭되게 할 수 있습니다.
※ 비활성 키보드
[문법]
ControlSend, Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText
[설명]
Control : ClassNN 값을 입력합니다.
Keys : 작성하고 싶은 내용을 입력하세요.
WinTitle : 창 제목입니다.
WinText : 매개변수는 목표 창 텍스트의 부문자열입니다.
ExcludeTitle : 제목에 이 값이 있는 창은 배제합니다.
ExcludeText : 텍스트에 이 값이 있는 창은 배제합니다.
[비활성키보드 자주 사용하는 문법]
ControlSend, ClassNN값, 내용, 창제목
비활성 키보드
비활성 메모장에 A키를 누릅니다.
ControlSend는 방향키가 안됩니다.
방향키(←,↑,↓,→) 입력은 PostMessage 사용하세요.
※ 비활성 마우스
[문법]
ControlClick, Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText
[설명]
Control-or-Pos : 좌표를 입력하거나 ClassNN 값을 사용합니다.
WinTitle : 창 제목입니다.
WinText : 존재하면, 이 매개변수는 목표 창 텍스트의 부문자열입니다
WhichButton : 마우스버튼 LEFT, RIGHT, MIDDLE 넣습니다. 비어 있으면 LEFT버튼이 사용됩니다.
ClickCount : 클릭횟수입니다.
Options : 기호들을 사용합니다.
Options 기호 NA D U POS Xn Yn X Y
설명
신뢰성을 개선할 수 있습니다
마우스 버튼을 누르지만 떼지 않습니다
마우스 버튼을 뗍니다
단어 Pos를 Options 아무데나 지정하면, 위의 Control-or-Pos 매개변수에 기술되어 있듯이 무조건 X/Y 위치 지정 모드를 사용합니다
n에다 클릭할 X 위치를 지정합니다. 이 위치는 컨트롤의 좌상 모서리에 상대적입니다. 지정하지 않으면, 클릭이 컨트롤의 수평-중앙에 일어납니다
n에다 클릭할 Y 위치를 지정합니다. 이 위치는 콘트롤의 좌상 모서리에 상대적입니다. 지정하지 않으면 클릭이 수직-중앙에 일어납니다
십진수를 사용합니다
십진수를 사용합니다
ExcludeTitle : 제목에 이 값이 있는 창은 무시합니다.
ExcludeText : 텍스트에 이 값이 있는 창은 무시합니다.
[비활성마우스 자주 사용하는 문법]
ControlClick, X좌표 Y좌표, 창제목,,마우스버튼(Left, Right), 클릭횟수
비활성 마우스
새폴더에서 마우스왼쪽을 두번 클릭합니다.
※ 비활성 (PostMessage, SendMessage)
[문법]
PostMessage, Msg, wParam, lParam, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
SendMessage, Msg, wParam, lParam, Control, WinTitle, WinText, ExcludeTitle, ExcludeText, Timeout
[설명]
Msg : 메시지코드입니다.
wParam, lParam : 키 값입니다. 생락하면 0 됩니다.
Control : ClassNN 값입니다.
WinTitle : 창 제목입니다.
WinText : 존재하면, 이 매개변수는 목표 창 텍스트의 부문자열입니다.
ExcludeTitle : 텍스트에 이 값이 있는 창은 무시합니다.
Timeout : 목표 창이 메시지를 처리하기를 기다릴 밀리초의 최대 개수. 생략하면 기본값은 5000 (밀리초)입니다.
PostMessage, SendMessage 차이점
두개의 차이점은 메시지 큐를 거치느냐 아니냐 하는 것입니다.
SendMessage는 메시지를 보내면 메시지 큐를 거치지 않고 직접 메시지 처리기를 호출합니다.
호출과 동시에 해당하는 메시지 처리기가 호출됩니다.
반면, PostMessage는 메시지를 메시지 큐에 넣어 주는 일만 합니다.
메시지를 보내주면 현재 수행되고 있는 함수가 완전히 끝나고, 메시지 큐에 쌓여 있던 메시지들의 처리기가 다 수행되고 난후에야 PostMessage로 보낸 메시지의 처리기가 호출됩니다.
비활성 (PostMessage)
메모장에 a키를 입력합니다.
메시지코드 0x100 0x101 0x200 0x201 0x202 0x203 0x204 0x205 0x206 0x00 0x01 0x02 0x03 0x05 0x06 0x07 0x08 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17 0x18 0x19 0x1A 0x1A 0x1B 0x1C 0x1D 0x1E 0x1F 0x20 0x21 0x22 0x23 0x24 0x26 0x27 0x28 0x2A 0x2B 0x2C 0x2D 0x2E 0x2F 0x30 0x31 0x32 0x33 0x37 0x39 0x41 0x46 0x47 0x48 0x4A 0x4B 0x4E 0x50 0x51 0x52 0x53 0x54 0x55 0x7B 0x7C 0x7D 0x7E 0x7F 0x80 0x81 0x82 0x83 0x84 0x85 0x86 0x87 0xA0 0xA1 0xA2 0xA3 0xA4 0xA5 0xA6 0xA7 0xA8 0xA9 0x102 0x103 0x104 0x105 0x106 0x107 0x108 0x10D 0x10E 0x10F 0x10F 0x110 0x111 0x112 0x113 0x114 0x115 0x116 0x117 0x11F 0x120 0x121 0x132 0x133 0x134 0x135 0x136 0x137 0x138 0x207 0x208 0x209 0x20A 0x20A 0x210 0x211 0x212 0x213 0x214 0x215 0x216 0x218 0x219 0x220 0x221 0x222 0x223 0x224 0x225 0x226 0x227 0x228 0x229 0x230 0x231 0x232 0x233 0x234 0x281 0x282 0x283 0x284 0x285 0x286 0x290 0x291 0x2A1 0x2A2 0x2A3 0x300 0x301 0x302 0x303 0x304 0x305 0x306 0x307 0x308 0x309 0x30A 0x30B 0x30C 0x30D 0x30E 0x30F 0x310 0x311 0x312 0x317 0x318 0x358 0x35F 0x380 0x38F 0x390 0x39F 0x3E0 0x3E0 0x3E1 0x3E2 0x3E3 0x3E4 0x3E5 0x3E6 0x3E7 0x3E8 0x3E8 0x400 0x8000
설명
키를 누른다
키를 땐다
마우스를 이동시킨다
마우스왼쪽 버튼을 누른다
마우스왼쪽 버튼을 땐다
마우스왼쪽 버튼을 두번 누른다
마우스오른쪽 버튼을 누른다
마우스오른쪽 버튼을 땐다
마우스오른쪽 버튼을 두번 누른다
WM_NULL
WM_CREATE
WM_DESTROY
WM_MOVE
WM_SIZE
WM_ACTIVATE
WM_SETFOCUS
WM_KILLFOCUS
WM_ENABLE
WM_SETREDRAW
WM_SETTEXT
WM_GETTEXT
WM_GETTEXTLENGTH
WM_PAINT
WM_CLOSE
WM_QUERYENDSESSION
WM_QUIT
WM_QUERYOPEN
WM_ERASEBKGND
WM_SYSCOLORCHANGE
WM_ENDSESSION
WM_SYSTEMERROR
WM_SHOWWINDOW
WM_CTLCOLOR
WM_WININICHANGE
WM_SETTINGCHANGE
WM_DEVMODECHANGE
WM_ACTIVATEAPP
WM_FonTCHANGE
WM_TIMECHANGE
WM_CANCELMODE
WM_SETCURSOR
WM_MOUSEACTIVATE
WM_CHILDACTIVATE
WM_QUEUESYNC
WM_GETMINMAXINFO
WM_PAINTICON
WM_IConERASEBKGND
WM_NEXTDLGCTL
WM_SPOOLERSTATUS
WM_DRAWITEM
WM_MEASUREITEM
WM_DELETEITEM
WM_VKEYTOITEM
WM_CHARTOITEM
WM_SETFonT
WM_GETFonT
WM_SETHOTKEY
WM_GETHOTKEY
WM_QUERYDRAGICON
WM_COMPAREITEM
WM_COMPACTING
WM_WINDOWPOSCHANGING
WM_WINDOWPOSCHANGED
WM_POWER
WM_COPYDATA
WM_CANCELJOURNAL
WM_NOTIFY
WM_INPUTLANGCHANGEREQUEST
WM_INPUTLANGCHANGE
WM_TCARD
WM_HELP
WM_USERCHANGED
WM_NOTIFYFORMAT
WM_ConTEXTMENU
WM_STYLECHANGING
WM_STYLECHANGED
WM_DISPLAYCHANGE
WM_GETICON
WM_SETICON
WM_NCCREATE
WM_NCDESTROY
WM_NCCALCSIZE
WM_NCHITTEST
WM_NCPAINT
WM_NCACTIVATE
WM_GETDLGCODE
WM_NCMOUSEMOVE
WM_NCLBUTTonDOWN
WM_NCLBUTTonUP
WM_NCLBUTTonDBLCLK
WM_NCRBUTTonDOWN
WM_NCRBUTTonUP
WM_NCRBUTTonDBLCLK
WM_NCMBUTTonDOWN
WM_NCMBUTTonUP
WM_NCMBUTTonDBLCLK
WM_CHAR
WM_DEADCHAR
WM_SYSKEYDOWN
WM_SYSKEYUP
WM_SYSCHAR
WM_SYSDEADCHAR
WM_KEYLAST
WM_IME_STARTCOMPOSITION
WM_IME_ENDCOMPOSITION
WM_IME_COMPOSITION
WM_IME_KEYLAST
WM_INITDIALOG
WM_COMMAND
WM_SYSCOMMAND
WM_TIMER
WM_HSCROLL
WM_VSCROLL
WM_INITMENU
WM_INITMENUPOPUP
WM_MENUSELECT
WM_MENUCHAR
WM_ENTERIDLE
WM_CTLCOLORMSGBOX
WM_CTLCOLOREDIT
WM_CTLCOLORLISTBOX
WM_CTLCOLORBTN
WM_CTLCOLORDLG
WM_CTLCOLORSCROLLBAR
WM_CTLCOLORSTATIC
WM_MBUTTonDOWN
WM_MBUTTonUP
WM_MBUTTonDBLCLK
WM_MOUSELAST
WM_MOUSEWHEEL
WM_PARENTNOTIFY
WM_ENTERMENULOOP
WM_EXITMENULOOP
WM_NEXTMENU
WM_SIZING
WM_CAPTURECHANGED
WM_MOVING
WM_POWERBROADCAST
WM_DEVICECHANGE
WM_MDICREATE
WM_MDIDESTROY
WM_MDIACTIVATE
WM_MDIRESTORE
WM_MDINEXT
WM_MDIMAXIMIZE
WM_MDITILE
WM_MDICASCADE
WM_MDIIConARRANGE
WM_MDIGETACTIVE
WM_MDISETMENU
WM_ENTERSIZEMOVE
WM_EXITSIZEMOVE
WM_DROPFILES
WM_MDIREFRESHMENU
WM_IME_SETConTEXT
WM_IME_NOTIFY
WM_IME_ConTROL
WM_IME_COMPOSITIonFULL
WM_IME_SELECT
WM_IME_CHAR
WM_IME_KEYDOWN
WM_IME_KEYUP
WM_MOUSEHOVER
WM_NCMOUSELEAVE
WM_MOUSELEAVE
WM_CUT
WM_COPY
WM_PASTE
WM_CLEAR
WM_UNDO
WM_RENDERFORMAT
WM_RENDERALLFORMATS
WM_DESTROYCLIPBOARD
WM_DRAWCLIPBOARD
WM_PAINTCLIPBOARD
WM_VSCROLLCLIPBOARD
WM_SIZECLIPBOARD
WM_ASKCBFORMATNAME
WM_CHANGECBCHAIN
WM_HSCROLLCLIPBOARD
WM_QUERYNEWPALETTE
WM_PALETTEISCHANGING
WM_PALETTECHANGED
WM_HOTKEY
WM_PRINT
WM_PRINTCLIENT
WM_HANDHELDFIRST
WM_HANDHELDLAST
WM_PENWINFIRST
WM_PENWINLAST
WM_COALESCE_FIRST
WM_COALESCE_LAST
WM_DDE_FIRST
WM_DDE_INITIATE
WM_DDE_TERMINATE
WM_DDE_ADVISE
WM_DDE_UNADVISE
WM_DDE_ACK
WM_DDE_DATA
WM_DDE_REQUEST
WM_DDE_POKE
WM_DDE_EXECUTE
WM_DDE_LAST
WM_USER
WM_APP
※ 창제목과 ClassNN 값 보는 방법
오토핫키 실행하면 작업 표시줄에 H 아이콘 생깁니다.
H 아이콘 오른쪽 마우스 클릭해서 Window Spy 들어갑니다.
창제목과 좌표, ClassNN값을 볼 수 있습니다.
'오토핫키 > 오토핫키 강좌' 카테고리의 다른 글
오토핫키 강좌 9강 - 이미지서치(ImageSearch) (13) | 2018.12.23 |
---|---|
오토핫키 강좌 10강 - 픽셀서치(PixelSearch) (1) | 2018.12.23 |
오토핫키 강좌 12강 - 변수 (3) | 2018.12.23 |
오토핫키 강좌 13강 - IF, Else (1) | 2018.12.22 |
오토핫키 강좌 14강 - 반복문(Loop, While) (0) | 2018.12.22 |