Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: PasqualeAcosta on November 02, 2018, 12:12:32 PM

Title: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 02, 2018, 12:12:32 PM
День добрый! Перечитал массу тем про проблемы с привязыванием окон. И только еще больше запутался.
В общем игра три в ряд, отдельный клиент, без каких либо геймгуардов и защит. Оконный режим. Винда 10.
Все цвета в лупе отображаются корректно, мышка кликает во время, цвета считываются. НО мышка кликает туда где находится курсор в данный момент, а не по координатам. Как такое исправить?
Судя по темам которые находил, есть ряд команд которые не работают при привязке, но не нашел нигде общий список того что "Нельзя".
В общем как обходят такие проблемы с наведением?
Title: Re: Привязка к окну, проблемы
Post by: dramster on November 02, 2018, 10:02:05 PM
А предварительное наведение курсора MOVE (x, y)  пробовал?
Title: Re: Привязка к окну, проблемы
Post by: dramster on November 02, 2018, 10:15:05 PM
 :-\ А MOVE  не работает при привязке? Я даже и не знал  :(.

Ну и ладно, вот этот MOVE  должен сработать http://crapware.aidf.org/forum/index.php?topic=2111.0

Либо просто:
postmessage($_hwnd,0x0200,0,$x+($y*65536)) //$x и $y - координаты.
Title: Re: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 02, 2018, 11:58:21 PM
А способа попроще реально нету)? Судя по описанию функций все гораздо проще должно было быть.
Я не против и так сделать, но реально именно так необходимо?
Как понимаю "0x0200" означает клик левой кнопки? Справку прочитал, но не особо понял эту команду. почему первый координат "0", а второй "$x+($y*65536)". Можно чуть подробнее.
Title: Re: Привязка к окну, проблемы
Post by: dramster on November 03, 2018, 12:33:47 AM
SENDMESSAGE / POSTMESSAGE (hwnd, message, wParam, lParam)

Параметры:
hwnd - HWND окна
message - сообщение окну
wParam, lParam - параметры сообщения



hwnd - с этим вроде понятно. Тем более, что если окно привязано, то служебная переменная $_hwnd дает текущий hwnd привязки.

message  - берем код сообщения на сайте макрасофта. Сообщения для мышки -  https://docs.microsoft.com/ru-ru/windows/desktop/inputdev/mouse-input-notifications.
Нам нужен WM_MOUSEMOVE - https://docs.microsoft.com/ru-ru/windows/desktop/inputdev/wm-mousemove. Сообщение 0x0200. 0x0200 - это число в шеснадцатеричном виде. Можно его написать в десятичном 512 , разницы нет.

Там же на сайте смотрим параметры wParam, lParam для WM_MOUSEMOVE.
wParam - это всякие доп кнопки при передвижении курсора, нам не нужно это, пишем 0.
lParam - два байта с координатами перемещения курсора. Младший байт - координата Х, старший байт - координата У. Эти две координаты представляются одним числом. Поэтому в этом параметре математическое выражение $x+($y*65536)

Title: Re: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 03, 2018, 12:41:17 AM
В вашем случае проявляется необходимость наводить курсор перед кликом, что исключает использование режима привязки.

Если кликер не может быть кликером, зачем тогда вообще привязки)? У меня сейчас жена в диабло 3 на виртуалке ботит)) Хороший вариант конечно, но думал все как то проще реализуется.
Title: Re: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 03, 2018, 12:47:53 AM
Хорошо, спасибо. Буду оба варианта тестировать. Как минимум ради общего развития)
Title: Re: Привязка к окну, проблемы
Post by: dramster on November 03, 2018, 12:50:22 AM
но даже если удастся наводить курсор в оконном режиме, то проблема пользования компом без свободного доступа к управлению мышью останется
Да не, не будет проблем  :D. С чего ты взял? Что будет мешать?



Я кстати вспомнил. В игре Арчейдж когдато делал посадку и уборку уражая с привзкой, и там тоже клики не проходили без наведения курсора. Так я тогда  прицепил move через реалистичное передвижение с POSTMESSAGE . Работало стабильно, и не мешало основной работе на пк.
Title: Re: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 03, 2018, 12:56:30 AM
Да не, не будет проблем  :D.
Что бы создать клик мне нужно будет через альтернативу прописать как наведение мышкой А_Move, а потом еще через альтернативу продублировать координаты в сам клик мышкой A_lclick ?
Просто не понимаю зачем прописывать передвижение если в самом щелчке так же указываются координаты действия?
Title: Re: Привязка к окну, проблемы
Post by: dramster on November 03, 2018, 01:01:57 AM
В том то и дело, что перед кликом тебе нужно сначала переместить курсор, а потом уже клик.
К примеру вот твой старый скрипт, выглядит так:
Code: (clickermann) [Select]
LCLICK(247,322) 
wait(1)
LCLICK(1245,620) 
wait(1)
LCLICK(1153,171) 
wait(1)
LCLICK(368,432) 
wait(1)

Нужно изменить его на вот такой:
Code: (clickermann) [Select]
//A_MOVE
SUB(A_MOVE, $A_x, $A_y, $A_hwnd)
   postmessage($A_hwnd,0x0200,0,$A_x+($A_y*65536))
END_SUB

A_MOVE(247,322, $_hwnd)
LCLICK(247,322) 
wait(1)
A_MOVE(1245,620, $_hwnd)
LCLICK(1245,620) 
wait(1)
A_MOVE(1153,171, $_hwnd)
LCLICK(1153,171) 
wait(1)
A_MOVE(368,432, $_hwnd)
LCLICK(368,432) 
wait(1)

Если клики у тебя работаю в привязке как LCLICK, то и нет нужды переписывать их на A_lclick.
Title: Re: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 03, 2018, 01:05:33 AM
Спасибо. Кстати тоже в арчейдж поигрывал когда то еще с ЗБТ на корее))
Title: Re: Привязка к окну, проблемы
Post by: PasqualeAcosta on November 03, 2018, 01:29:53 AM
В том то и дело, что перед кликом тебе нужно сначала переместить курсор, а потом уже клик.

Прописал, не получается. Координаты нормально определяются, привязка правильная, в логе так же все корректно отображается. Но по факту клик все равно происходит там где в данный момент находится курсор и он не сдвигается...
Пробовал и клики мыши прописать через postmessage как у вас в теме.
Тоже 0 реакции. В чем еще может быть проблема?
Title: Re: Привязка к окну, проблемы
Post by: dramster on November 03, 2018, 10:45:50 PM
 :-\ Ну... значит не судьба.