Author Topic: Помогите с проблемой  (Read 2620 times)

0 Members and 1 Guest are viewing this topic.

Atheas

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Помогите с проблемой
« on: October 29, 2021, 11:00:32 AM »
Появилась такая проблема, до некоторого времени все работало нормально без сбоев, а потом в данном скрипте перестало видеть  данные строки (их я выделил жирным шрифтом)
при том, что корректировки никакие не делались. Таких скриптов в макросе 9 шт, не видит 3 и 4, ума не приложу в чем проблема.

GETSCREEN
IF_PIXEL_IN(117,198,825,1038,6737016)
   WAIT(2)
   MCLICK($_return1, $_return2)
   WAIT(1)
END_IF
GETSCREEN
IF_PIXEL_IN(5,4,1888,81,16579835)
   LCLICK(985,14)
   WAIT(3)
   LCLICK(1081,14)
   WAIT(3)
END_IF

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите с проблемой
« Reply #1 on: October 29, 2021, 11:20:57 AM »
Что значит "перестало видеть строки"? Как это определил?


Atheas

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Re: Помогите с проблемой
« Reply #2 on: October 29, 2021, 11:32:23 AM »
Вкратце объясню суть макроса, открыто 10 закладок в браузере, пишется ключевое слово в браузере, оно выделяется цветом и по цвету этим скриптом его находит и открывает
GETSCREEN
IF_PIXEL_IN(117,198,825,1038,6737016)
   WAIT(2)
   MCLICK($_return1, $_return2)
   WAIT(1)
END_IF

затем 2я часть скрипта которую не видит, должна перейти на открытую страницу и закрыть ее
GETSCREEN
IF_PIXEL_IN(5,4,1888,81,16579835)
   LCLICK(1455,14)
   WAIT(3)
   LCLICK(1540,11)
   WAIT(3)
END_IF


и по необъяснимой мне причине, часть из скриптов работает без проблем, а часть не видит их
Все скрипты одинаковые, разница только в координатах закрытия окон браузера.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите с проблемой
« Reply #3 on: October 29, 2021, 05:47:25 PM »
Ещё раз. Как определил что "часть скрипта которую не видит"?

Потому как варианта 4.
1. 50% при таком вопросе, оказывается, что просто не находит такой цвет. Начинают ошибочно говорить, что часть скрипта не работает. Обычно, всё там Находит и достаточно расставить вывод в лог
Code: (clickermann) [Select]
GETSCREEN
IF_PIXEL_IN(5,4,1888,81,16579835)
   LCLICK(1455,14)
   WAIT(3)
   LCLICK(1540,11)
   WAIT(3)
   print("Нашёл")
ELSE
   print("НЕ нашёл")
END_IF

2. Ещё 40% цвет находит, но действия не выполняются. Клики заданы не туда, или их не пропускает защита, или используется привязка и координаты перепутаны или привязано не то окно. Определяется так же расставлением вывода в лог.

3. Бывает, после изменения скрипта, забыли нажать "применить", тогда выполняется старый код - до изменения. Проходит после нажатия применить или переокрытии скрипта. Скорее всего, это не твой случай, но помнить о нём нужно.

4. Скрипт неправильный и в нём творится жуткий треш: не закрытые блоки, перехлестнувшиеся блоки и т.п. Тогда часть строк, в местах ошибок, тупо не воспринимается. Надеюсь это тоже не твой случай, т.к. предоставленные части простые. Может там остальное наверчено, но это не видно.

В итоге остаётся первый вариант, просто тупо нет такого цвета. Он мог измениться. Он мог пропасть из-за сглаживания или изменения масштаба, да что угодно.
Или второй, здесь по ситуации. Самое простое, запуск кликера от админа.


Atheas

  • Зашел в гости
  • *
  • Posts: 7
    • View Profile
Re: Помогите с проблемой
« Reply #4 on: October 29, 2021, 06:05:24 PM »
Большое спасибо за ответ, единственный вопрос, что такое "их не пропускает защита" ?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите с проблемой
« Reply #5 on: November 02, 2021, 09:25:54 AM »
Большое спасибо за ответ, единственный вопрос, что такое "их не пропускает защита" ?
Если речь о работе в браузере, то забудь. Защитник Windows иногда не пропускает клики, чтобы этого избежать, нужно кликеру выставить запуск от администратора и можно забыть.