Author Topic: Динамический HWND  (Read 1662 times)

0 Members and 1 Guest are viewing this topic.

Xiod

  • Зашел в гости
  • *
  • Posts: 2
    • View Profile
Динамический HWND
« on: December 11, 2014, 11:41:16 AM »
Доброго времени суток.

Суть проблемы заключается в том, что после некоторой операции скрипта окно перезагружается. Соответственно меняется его hwnd, что мешает использовать привязку к окну. Пришел к выводу, что нужно ловить окно посредством WNDFIND и отсылать ему сообщения через POSTMESSAGE. Но при запуске скрипта вылезает ошибка.



Code: [Select]
#name "New Script"

$WM_LBUTTONDOWN = 0x0201
$WM_LBUTTONUP = 0x0202
$MK_LBUTTON = 0x0001

FOR($i,$i<3)

$_hwnd = WNDFIND("заголовок")

$x=55;
$y=65;

POSTMESSAGE($_hwnd, $WM_LBUTTONDOWN, $MK_LBUTTON, $x + ($y*65536))
WAITMS(50)
POSTMESSAGE($_hwnd, $WM_LBUTTONUP, $MK_LBUTTON, $x + ($y*65536))
WAIT(2)

$x=120;
$y=110;

POSTMESSAGE($_hwnd, $WM_LBUTTONDOWN, $MK_LBUTTON, $x + ($y*65536))
WAITMS(50)
POSTMESSAGE($_hwnd, $WM_LBUTTONUP, $MK_LBUTTON, $x + ($y*65536))
WAIT(30)

$x=245;
$y=790;

POSTMESSAGE($_hwnd, $WM_LBUTTONDOWN, $MK_LBUTTON, $x + ($y*65536))
WAITMS(50)
POSTMESSAGE($_hwnd, $WM_LBUTTONUP, $MK_LBUTTON, $x + ($y*65536))
WAIT(30)

END_CYC


halt

Что я делаю не так? Есть ли другие варианты решения данной проблемы?

P.S. 64-битная 7ка
« Last Edit: December 11, 2014, 11:44:01 AM by Xiod »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Динамический HWND
« Reply #1 on: December 11, 2014, 11:50:00 AM »
Точку с запятой убери. В кликере нет этого в синтаксисе.
Например, после $x=55;  он присваивает переменной строковое значение "55;" которое в вычислениях участвовать не может.


Xiod

  • Зашел в гости
  • *
  • Posts: 2
    • View Profile
Re: Динамический HWND
« Reply #2 on: December 11, 2014, 11:52:53 AM »
Оу, слона то я и не заметил) Спасибо за помощь, помогло)