Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: stadon on June 22, 2018, 08:40:56 AM
-
Доброе время суток Уважаемые!
Помогите пожалуйста понять почему ЦП грузится на 100% и если возможно исправить скрипт.
Установлена Oracle VM VirtualBox там Windows XP PS3 x86 выделил 1GB виртуальной памяти и один процессор от i7-7700HQ.
Всю ночь сидел писал, тестил, читал форум и снова писал.
Все работает, но мне что то подсказывает что где-то что-то не так, иногда проскакивает строки кода (вывод из LOGWRITE).
Задача была что бы при вкл. ПК батником с автозагрузки запускался Ghrome и Clickermann, дальше вкладка с миллионами страниц..
1) идет проверка на загрузку страницы и javascript двумя bmp картинками.
2) сравнение картинками цвета, цепочка такая: синий подходит делаем скрин - следующая страница, если нет ищем серый - нашли - идем дальше, если нет ищем красный (это ошибка) - нашли - обновили, вернулись в начало проверок, если нет просто обновили и в начало.
3) все это дело в условии со временем, что бы через 5600 секунд перезагрузить ПК.
Вот код, посмотрите если не тяжело, буду очень благодарен! Заранее спасибо :)
#autorun
WAIT(40)
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
// Ожидание загрузки Chrome
SUB(ожидание)
$t = $_time_t + 30 // до 30 сек
$check1 = 0
WHILE($check1 = 0)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b.bmp", -1, 90)
// Проверка 1 bmp
// 0,0, $_xmax,$_ymax, file.bmp 53,26, 95,59, 12,1, 42,25, "file2.bmp"
$check1 = 1
WAITMS(100)
ELSE // если нет
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
// Проверка 2 bmp
$check1 = 1
WAITMS(100)
ELSE // если ничего не совпадает обновляем
WAITMS(150)
IF($t < $_time_t)
LOGWRITE ("ОБНОВИТЬ LC")
LCLICK(77,43) // жмем LC по x, y
$t = $_time_t + 30
END_IF
END_IF
END_IF
END_CYC
END_SUB
// end ожидания
// обновить страницу
SUB(обновить)
LCLICK(77,43)
WAIT(5)
END_SUB
// end обновить страницу
FOR ($i=0, $i<5000) // начало цикла проверок, повторить 5000 раз
1:
LOGWRITE ("1 СТАРТ")
WAITMS(250)
ожидание()
// LOGWRITE ("конец ожидания")
LOGWRITE ("начало сравнения")
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
WAITMS(150)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
$check2 = 1
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_xp1_", 1) // делаем скрин в папку
WAITMS(150)
LOGWRITE ("GOOD НАЙДЕН")
ELSE // 2 сравнение
WAITMS(250)
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
$check2 = 0
WHILE($check2 = 0)
WAITMS(100)
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 90)
$check2 = 1
LOGWRITE ("СЕРЫЙ найден") // начать заново
WAITMS(150)
ELSE // 3 сравнение
LOGWRITE ("начало сравнения по красному цвету bmp картинкой")
$check3 = 0
WHILE($check3 = 0)
WAITMS(100)
IF_PICTURE_IN (1610,375, 1765,535, "red.bmp", -1, 90)
$check3 = 1
LOGWRITE ("красный найден") // не подходит, ошибка, обновляем
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
goto(1) // Идем в начало
ELSE // если вдруг отпадет инет
WAITMS(150)
LOGWRITE ("красный НЕ найден")
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
goto(1) // Идем в начало
END_IF
END_CYC
END_IF
END_CYC
END_IF
END_CYC
LOGWRITE ("конец сравнения")
WAITMS(150)
LCLICK(1775,239) // жмем след страницу
LOGWRITE ("ЗАНОВО")
WAIT(3)
END_CYC
FOR ($a=0, $a<1) // после 5000 сравнений обновить страницу
WAIT(5)
LOGWRITE ("ОБНОВЛЕНИЕ, ПОСЛЕ 1 ФОР")
обновить()
END_CYC
LOGWRITE ("RESTART")
END_IF
WAIT(10)
LCLICK(1892,7)
WAIT(5)
// рестарт ПК
EXECUTE ("TASKKILL","/ f /IM chrome.exe")
EXECUTE ("shutdown.exe", "/r /f /t 03")
HALT(1)
-
Описание подпрограмм должно быть на первом уровне.
из циклов нельзя выпрыгивать через гото.
У тебя там было несколько бессмысленных циклов на 1 раз, все удалил.
Верный код
#autorun
// Ожидание загрузки Chrome
SUB(ожидание)
$t = $_time_t + 30 // до 30 сек
$check1 = 0
WHILE($check1 = 0)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b.bmp", -1, 90)
// Проверка 1 bmp
// 0,0, $_xmax,$_ymax, file.bmp 53,26, 95,59, 12,1, 42,25, "file2.bmp"
$check1 = 1
WAITMS(100)
ELSE // если нет
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
// Проверка 2 bmp
$check1 = 1
WAITMS(100)
ELSE // если ничего не совпадает обновляем
WAITMS(150)
IF($t < $_time_t)
LOGWRITE ("ОБНОВИТЬ LC")
LCLICK(77,43) // жмем LC по x, y
WAITMS(100)
$t = $_time_t + 30
END_IF
END_IF
END_IF
END_CYC
END_SUB
// end ожидания
// обновить страницу
SUB(обновить)
LCLICK(77,43)
WAIT(5)
END_SUB
// end обновить страницу
//=== Основной код ==========================================
WAIT(40)
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
FOR($i=0, $i<5000) // начало цикла проверок, повторить 5000 раз
LOGWRITE ("1 СТАРТ")
WAITMS(250)
ожидание()
// LOGWRITE ("конец ожидания")
LOGWRITE ("начало сравнения")
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
WAITMS(150)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
$check2 = 1
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_xp1_", 1) // делаем скрин в папку
WAITMS(150)
LOGWRITE ("GOOD НАЙДЕН")
ELSE // 2 сравнение
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 90)
LOGWRITE ("СЕРЫЙ найден") // начать заново
WAITMS(150)
ELSE // 3 сравнение
LOGWRITE ("начало сравнения по красному цвету bmp картинкой")
IF_PICTURE_IN (1610,375, 1765,535, "red.bmp", -1, 90)
LOGWRITE ("красный найден") // не подходит, ошибка, обновляем
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 2 // Идем в начало
ELSE // если вдруг отпадет инет
WAITMS(150)
LOGWRITE ("красный НЕ найден")
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 2 // Идем в начало
END_IF
END_IF
END_IF
END_CYC
IF($check2 ! 2)
LOGWRITE ("конец сравнения")
WAITMS(150)
LCLICK(1775,239) // жмем след страницу
LOGWRITE ("ЗАНОВО")
WAIT(3)
END_IF
END_CYC
// после 5000 сравнений обновить страницу
WAIT(5)
LOGWRITE ("ОБНОВЛЕНИЕ, ПОСЛЕ 1 ФОР")
обновить()
LOGWRITE ("RESTART")
END_IF
WAIT(10)
LCLICK(1892,7)
WAIT(5)
// рестарт ПК
EXECUTE ("TASKKILL","/ f /IM chrome.exe")
EXECUTE ("shutdown.exe", "/r /f /t 03")
HALT(1)
-
На счет снижения нагрузки.
Можно ограничить область снимка GETSCREEN Конкретной областью поиска, только нужно будет перед каждым поиском написать GETSCREEN конкретной области.
Например
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
WAITMS(150)
GETSCREEN(1650,270, 1820,306)
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
$check2 = 1
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_xp1_", 1) // делаем скрин в папку
WAITMS(150)
LOGWRITE ("GOOD НАЙДЕН")
ELSE // 2 сравнение
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
GETSCREEN(1610,375, 1765,535)
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 90)
LOGWRITE ("СЕРЫЙ найден") // начать заново
WAITMS(150)
ELSE // 3 сравнение
LOGWRITE ("начало сравнения по красному цвету bmp картинкой")
IF_PICTURE_IN (1610,375, 1765,535, "red.bmp", -1, 90)
LOGWRITE ("красный найден") // не подходит, ошибка, обновляем
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 2 // Идем в начало
ELSE // если вдруг отпадет инет
WAITMS(150)
LOGWRITE ("красный НЕ найден")
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 2 // Идем в начало
END_IF
END_IF
END_IF
END_CYC
А еще есть ли смысл писать 90 % совпадения без использования цветокоррекции? Это ты сам придумал или просто от куда то скопировал? Процент совпадения меньше 100 создает дополнительную нагрузку и уменьшает скорость поиска.
-
А еще есть ли смысл писать 90 % совпадения без использования цветокоррекции? Это ты сам придумал или просто от куда то скопировал? Процент совпадения меньше 100 создает дополнительную нагрузку и уменьшает скорость поиска.
Спасибо за помощь, искал по форуму, рвал куски кода которые мне были нужны и правил пока код не заработает как мне нужно, теперь я понял что за 90 ... исправил на 100.
Загрузка ЦП упала до 4-50% после добавления GETSCREEN с конкретной областью поиска.
Начал тестировать код который Вы дали и понял что я коментарии написал не правильно, изначально открыл страницу с серым цветом в Chrome и при запуске кликера с ожиданием 40 сек в логе я увидел:
17:42:04 1 СТАРТ
17:42:04 конец ожидания
17:42:04 начало сравнения
17:42:04 начало сравнения по серому цвету bmp картинкой
17:42:04 СЕРЫЙ найден
17:42:05 начало сравнения по серому цвету bmp картинкой
17:42:05 СЕРЫЙ найден
17:42:06 начало сравнения по серому цвету bmp картинкой
17:42:06 СЕРЫЙ найден
17:42:07 начало сравнения по серому цвету bmp картинкой
17:42:07 СЕРЫЙ найден...........
..............................................
ELSE // 2 сравнение
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 90)
LOGWRITE ("СЕРЫЙ найден") // начать заново
WAITMS(150)
ELSE // 3 сравнение
в задумке должно было закончить сравнение (нажать на следующую страницу строка 90.) и начать цикл заново
Верный код
#autorun
// Ожидание загрузки Chrome
SUB(ожидание)
$t = $_time_t + 30 // до 30 сек
$check1 = 0
WHILE($check1 = 0)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b.bmp", -1, 90)
// Проверка 1 bmp
// 0,0, $_xmax,$_ymax, file.bmp 53,26, 95,59, 12,1, 42,25, "file2.bmp"
$check1 = 1
WAITMS(100)
ELSE // если нет
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
// Проверка 2 bmp
$check1 = 1
WAITMS(100)
ELSE // если ничего не совпадает обновляем
WAITMS(150)
IF($t < $_time_t)
LOGWRITE ("ОБНОВИТЬ LC")
LCLICK(77,43) // жмем LC по x, y
WAITMS(100)
$t = $_time_t + 30
END_IF
END_IF
END_IF
END_CYC
END_SUB
// end ожидания
// обновить страницу
SUB(обновить)
LCLICK(77,43)
WAIT(5)
END_SUB
// end обновить страницу
//=== Основной код ==========================================
WAIT(40)
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
FOR($i=0, $i<5000) // начало цикла проверок, повторить 5000 раз
LOGWRITE ("1 СТАРТ")
WAITMS(250)
ожидание()
// LOGWRITE ("конец ожидания")
LOGWRITE ("начало сравнения")
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
WAITMS(150)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 90)
$check2 = 1
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_xp1_", 1) // делаем скрин в папку
WAITMS(150)
LOGWRITE ("GOOD НАЙДЕН")
ELSE // 2 сравнение
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 90)
LOGWRITE ("СЕРЫЙ найден") // начать заново
WAITMS(150)
ELSE // 3 сравнение
LOGWRITE ("начало сравнения по красному цвету bmp картинкой")
IF_PICTURE_IN (1610,375, 1765,535, "red.bmp", -1, 90)
LOGWRITE ("красный найден") // не подходит, ошибка, обновляем
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 2 // Идем в начало
ELSE // если вдруг отпадет инет
WAITMS(150)
LOGWRITE ("красный НЕ найден")
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 2 // Идем в начало
END_IF
END_IF
END_IF
END_CYC
IF($check2 ! 2)
LOGWRITE ("конец сравнения")
WAITMS(150)
LCLICK(1775,239) // жмем след страницу
LOGWRITE ("ЗАНОВО")
WAIT(3)
END_IF
END_CYC
// после 5000 сравнений обновить страницу
WAIT(5)
LOGWRITE ("ОБНОВЛЕНИЕ, ПОСЛЕ 1 ФОР")
обновить()
LOGWRITE ("RESTART")
END_IF
WAIT(10)
LCLICK(1892,7)
WAIT(5)
// рестарт ПК
EXECUTE ("TASKKILL","/ f /IM chrome.exe")
EXECUTE ("shutdown.exe", "/r /f /t 03")
HALT(1)
Думал переделать свой код с Вашими исправлениями но у меня там GOTO, по другому я не понимаю как ( склад ума не кодера и практики нет...
Если не в тягость исправьте пожалуйста что бы было:
Зашел в цикл:
1 сравнение: синий нашли делаем скрин - следующая страница, цикл заново, - если нет ищем серый
2 сравнение: нашли серый - БЕЗ скрина следующая страница, цикл заново, - если нет ищем красный (это ошибка, страница загрузилась не полностью или не правильно)
3 сравнение: нашли красный - обновили, вернулись в начало проверок, если нет - просто обновили и в начало проверок.
-
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
это ваше условие вообще работать не будет, так как после после перезагрузки компа и перезапуска программы переменные обнулятся
так было и задумано, перезагрузка, обнуление и заново :)
-
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
это ваше условие вообще работать не будет, так как после после перезагрузки компа и перезапуска программы переменные обнулятся
так было и задумано, перезагрузка, обнуление и заново :)
Условие
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
второй раз никогда не выполнится потому что скрипт в конце завершает свою работу. А значит писать его здесь бессмысленно.
Для понимания этого условия:
$_time_t - это системная переменная, возвращает текущее время Unix в секундах. Значение постоянно увеличивается.
$time1 = $_time_t + 5600 - здесь мы записываем в переменную $time1 время Unix + 5600 секунд
IF($time1 < $_time_t) - в результате при последующих проходах скрипта условие снова выполнится только когда текущее время нагонит значение в переменной $time1
Вроде написал как ты хотел. Добавил директиву #logfile. Теперь лог будет записываться в файл рядом со скриптом, чтоб он остался после перезагрузки.
#autorun
#logfile
// Ожидание загрузки Chrome
SUB(ожидание)
$t = $_time_t + 30 // до 30 сек
$check1 = 0
WHILE($check1 = 0)
GETSCREEN
IF_PICTURE_IN (1650,270, 1820,306, "b.bmp", -1, 100)
// Проверка 1 bmp
// 0,0, $_xmax,$_ymax, file.bmp 53,26, 95,59, 12,1, 42,25, "file2.bmp"
$check1 = 1
WAITMS(100)
ELSE // если нет
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 100)
// Проверка 2 bmp
$check1 = 1
WAITMS(100)
ELSE // если ничего не совпадает обновляем
WAITMS(150)
IF($t < $_time_t)
LOGWRITE ("ОБНОВИТЬ LC")
LCLICK(77,43) // жмем LC по x, y
WAITMS(100)
$t = $_time_t + 30
END_IF
END_IF
END_IF
END_CYC
END_SUB
// end ожидания
// обновить страницу
SUB(обновить)
LCLICK(77,43)
WAIT(5)
END_SUB
// end обновить страницу
//=== Основной код ==========================================
WAIT(40)
IF($time1 < $_time_t)
$time1 = $_time_t + 5600 // 5600 сек перезагрузка
FOR($i=0, $i<5000) // начало цикла проверок, повторить 5000 раз
LOGWRITE ("1 СТАРТ")
WAITMS(250)
ожидание()
// LOGWRITE ("конец ожидания")
LOGWRITE ("начало сравнения")
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
WAITMS(150)
GETSCREEN(1650,270, 1820,306)
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 100)
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_xp1_", 1) // делаем скрин в папку
WAITMS(150)
LOGWRITE ("GOOD НАЙДЕН")
LCLICK(1775,239) // жмем след страницу
LOGWRITE ("ЗАНОВО")
WAIT(3)
ELSE // 2 сравнение
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
GETSCREEN(1610,375, 1765,535)
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 100)
LOGWRITE ("СЕРЫЙ найден") // начать заново
WAITMS(150)
LCLICK(1775,239) // жмем след страницу
LOGWRITE ("ЗАНОВО")
WAIT(3)
ELSE // 3 сравнение
LOGWRITE ("начало сравнения по красному цвету bmp картинкой")
IF_PICTURE_IN (1610,375, 1765,535, "red.bmp", -1, 100)
LOGWRITE ("красный найден") // не подходит, ошибка, обновляем
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 1 // Идем в начало
ELSE // если вдруг отпадет инет
WAITMS(150)
LOGWRITE ("красный НЕ найден")
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 1 // Идем в начало
END_IF
END_IF
END_IF
END_CYC
LOGWRITE ("конец сравнения")
END_CYC
// после 5000 сравнений обновить страницу
WAIT(5)
LOGWRITE ("ОБНОВЛЕНИЕ, ПОСЛЕ 1 ФОР")
обновить()
LOGWRITE ("RESTART")
END_IF
WAIT(10)
LCLICK(1892,7)
WAIT(5)
// рестарт ПК
EXECUTE ("TASKKILL","/ f /IM chrome.exe")
EXECUTE ("shutdown.exe", "/r /f /t 03")
HALT(1)
-
Спасибо Oraven! :) добавил пару строк и заработало как я хотел!
Удалил лишний код, с временем решил не играться, оставил просто что бы через 5000 повторов была перезагрузка.
вот код который мне был нужен, точнее конечный и правильный результат
#autorun
#logfile
// Ожидание загрузки Chrome
SUB(ожидание)
$t = $_time_t + 30 // до 30 сек
$check1 = 0
WHILE($check1 = 0)
GETSCREEN(1650,270, 1820,306)
IF_PICTURE_IN (1650,270, 1820,306, "b.bmp", -1, 100)
// Проверка 1 bmp
$check1 = 1
WAITMS(100)
ELSE // если нет
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 100)
// Проверка 2 bmp
$check1 = 1
WAITMS(100)
ELSE // если ничего не совпадает обновляем
WAITMS(150)
IF($t < $_time_t)
LOGWRITE ("ОБНОВИТЬ LC")
LCLICK(77,43) // жмем LC по x, y
WAITMS(100)
$t = $_time_t + 30
END_IF
END_IF
END_IF
END_CYC
END_SUB
// end ожидания
// обновить страницу
SUB(обновить)
LCLICK(77,43)
WAIT(5)
END_SUB
// end обновить страницу
//=== Основной код ==========================================
WAIT(40)
LOGWRITE ("НАЧАЛО ФОР")
FOR($i=0, $i<5000) // начало цикла проверок, повторить 5000 раз
LOGWRITE ("1 СТАРТ")
WAITMS(250)
ожидание()
LOGWRITE ("НАЧАЛО сравнения")
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
WAITMS(150)
GETSCREEN(1650,270, 1820,306)
IF_PICTURE_IN (1650,270, 1820,306, "b2.bmp", -1, 100)
GETSCREEN
SCREENSHOTEX(0,0, $_xmax,$_ymax, "Image_xp1_", 1) // делаем скрин в папку
SOUND("Dring.wav") // немного музыки в минуты радости :)
WAITMS(150)
LOGWRITE ("GOOD НАЙДЕН")
LCLICK(1775,239) // жмем след страницу
WAIT(3)
$check2 = 1 // Идем в начало
ELSE // 2 сравнение
LOGWRITE ("начало сравнения по серому цвету bmp картинкой") // для точности
GETSCREEN(1610,375, 1765,535)
IF_PICTURE_IN (1610,375, 1765,535, "b.bmp", -1, 100)
LOGWRITE ("СЕРЫЙ найден")
WAITMS(150)
LOGWRITE ("жмем след страницу")
LCLICK(1775,239) // жмем след страницу
WAIT(3)
$check2 = 1 // Идем в начало
ELSE // 3 сравнение
LOGWRITE ("начало сравнения по красному цвету bmp картинкой")
IF_PICTURE_IN (1610,375, 1765,535, "red.bmp", -1, 100)
LOGWRITE ("красный найден") // не подходит, ошибка, обновляем
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 1 // Идем в начало
ELSE // если вдруг отпадет инет
WAITMS(150)
LOGWRITE ("красный НЕ найден")
LOGWRITE ("обновить страницу")
обновить()
WAITMS(150)
LOGWRITE ("В НАЧАЛО")
$check2 = 1 // Идем в начало
END_IF
END_IF
END_IF
END_CYC
LOGWRITE ("конец сравнения")
END_CYC
LOGWRITE ("RESTART")
WAIT(10)
LCLICK(1892,7)
WAIT(5)
// рестарт ПК
EXECUTE ("TASKKILL","/ f /IM chrome.exe")
EXECUTE ("shutdown.exe", "/r /f /t 03")
HALT(1)
Всем добра ;)
-
вот код который мне был нужен, точнее конечный и правильный результат
Вот опять, нафига цикл
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
если при любом варианте происходит выход из него $check2 = 1 ?
Получается и этот цикл не нужен...
-
Вот опять, нафига цикл
$check2 = 0 // 1 сравнение
WHILE($check2 = 0)
если при любом варианте происходит выход из него $check2 = 1 ?
Получается и этот цикл не нужен...
Простите, но я не понял вопроса ((
Я пока тестил: сравнивал все варианты, перезагружал ПК, вырубал интернет, крашил страницу... Выпил литр кофе :-\
Суть в том что оно работает как мне было нужно и ЦП грузит в половину, я доволен, Вам спасибо! ;)