Loop
sleep,300
F2::
;BlockInput,MouseMove
Titulo = Nova guia - Google Chrome
WinGet, WinID, ID, %Titulo%
X = 1059
Y = 39
lparam := MakeLong(X, Y)
SendMessage, 0x086 , 0x00000000 , 0x00000000, , ahk_id %WinID% ;NOACTIVATE SEND
PostMessage, 0x200, 0, %lparam%, , ahk_id %WinID% ; Move
FileAppend lparam %lparam% `n, *
Sleep, 200
PostMessage, 0x201, 0x0001, %lparam%, , ahk_id %WinID% ; LButtonDown
PostMessage, 0x202 , 0, %lparam%, , ahk_id %WinID% ; LButtonUp
return
;WM_MOUSEHOVER := 0x2A1
;WM_MOUSEFIRST = 0x200
;WM_MOUSEMOVE = 0x200
;WM_LBUTTONDOWN = 0x201
;WM_LBUTTONUP = 0x202
;WM_LBUTTONDBLCLK = 0x203
;WM_RBUTTONDOWN = 0x204
;WM_RBUTTONUP = 0x205
;WM_RBUTTONDBLCLK = 0x206
;WM_MBUTTONDOWN = 0x207
;WM_MBUTTONUP = 0x208
;WM_MBUTTONDBLCLK = 0x209
;WM_MOUSEWHEEL = 0x20A
;WM_MOUSEHWHEEL = 0x20E
MakeLong(LoWord, HiWord )
{
return (HiWord << 16) | (LoWord & 0xffff)
}
Code in AutoHotkey.
My script moves the mouse to XY position using postmessage and send a click, the problem is, if i move the mouse while script runs he click where the mouse is.
What i could do to avoid it? Blocking mouse input wouldnt help.
Theres any way to get the position of mouse moved by WS_MOUSEMOVE? If i use MouseGetPos, it gets the pos of mouse in screen and not where the mouse was moved using WS_MOUSEMOVE.
User contributions licensed under CC BY-SA 3.0