Author Topic: postmessage  (Read 2475 times)

0 Members and 1 Guest are viewing this topic.

Ramzesia

  • Активный участник
  • ***
  • Posts: 263
    • View Profile
postmessage
« on: March 20, 2021, 03:55:08 PM »
Всем привет! Помогите пожалуйста. Как через postmessage, отправить команду для мышки? С клавишами разобрался, в низу пример кода что нужно сделать, клавиша отправляется а вот как команду миши отправить не знаю.

Code: (clickermann) [Select]
SUB(Клавиша, $par)
   postmessage($Okno, 0x0100, $par, 0) // нажать
   postmessage($Okno, 0x0101, $par, 0) // отпустить
END_SUB

$Okno = wndfind("Paint")
wndgetinfo($Okno, $o_x, $o_y, $r_g, $r_v)

$Clik_x = ROUND($r_g/2,0)
$Clik_y = ROUND($r_v/2,0)

Клавиша(#1)

// То что ниже, как отправить окну?
LDOWN($Clik_x, $Clik_y) // Зажать в центре окна
WAITMS(200)
LUP($Clik_x + 200, $Clik_y) // Переместить на 200 пикселей отпустить

HALT

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: postmessage
« Reply #1 on: March 20, 2021, 08:09:29 PM »
Code: (clickermann) [Select]
//A_LCLICK
SUB(A_LCLICK, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0201,0x0001,$A_x+($A_y*65536))
   waitms($A_press_delay)
   postmessage($A_hwnd,0x0202,0x0001,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_LDOWN
SUB(A_LDOWN, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0201,0x0001,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_LUP
SUB(A_LUP, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0202,0x0001,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_DBLCLICK
SUB(A_DBLCLICK, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0203,0x0001,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
// A_RCLICK
SUB(A_RCLICK, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0204,0x0002,$A_x+($A_y*65536))
   waitms($A_press_delay)
   postmessage($A_hwnd,0x0205,0x0002,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_RDOWN
SUB(A_RDOWN, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0204,0x0002,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_RUP
SUB(A_RUP, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0205,0x0002,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
// A_MCLICK
SUB(A_MCLICK, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0207,0x0010,$A_x+($A_y*65536))
   waitms($A_press_delay)
   postmessage($A_hwnd,0x0208,0x0010,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_MDOWN
SUB(A_MDOWN, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0207,0x0010,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_MUP
SUB(A_MUP, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0208,0x0010,$A_x+($A_y*65536))
END_SUB
//-----------------------------------------------------------
//A_MOVE
SUB(A_MOVE, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0200,0,$A_x+($A_y*65536))
END_SUB

http://crapware.aidf.org/forum/index.php?topic=2111.0

Ramzesia

  • Активный участник
  • ***
  • Posts: 263
    • View Profile
Re: postmessage
« Reply #2 on: March 21, 2021, 08:44:59 AM »
Спасибо хорошая тема, то что доктор прописал!)

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: postmessage
« Reply #3 on: March 21, 2021, 11:15:26 PM »
Изначально инфа бралась из этого поста http://crapware.aidf.org/forum/index.php?topic=33.msg562#msg562 . Там ссылки на msdn, где есть всё что можно использовать в системных сообщениях.