Подскажите пожалуйста, на сегодняшний день в версии пилота 2.32 есть возможность настроить поиск цвета пикселя в окне (приложении), которое перекрыто, например, блокнотом или просто всернуто на панель задач ?
Либо у меня что-то не получается, либо оно в принципе не работает.
// рабочее окно я указываю при помощи ctrl+a
set $a findcolor (0, 0 450, 250 1 1 7132903 %s 2 workwindow abs)
set #w size (%s)
msg size: #w found: $a
for #i 1 #w
set #x %s [#i 1]
set #y %s [#i 2]
end_for
Если окно развернуто на мониторе поверх всего или виден искомый пиксель из-за других окон которые на переднем плане - то пиксель находится. Если же окно игры перекрыть блокнотом, то все, капут Если в скрипте перед workwindow поставить 1 (там стоит 2), то спасет только закрытие пилота и повторное открытие, ибо кнопка старт пуск вообще перестает реагировать (ощущение складывается, что пилот просто завис). Если там же удалить 2 - то пиксель не найдется ни в каком случае (я как понял, там можно ставить 1, 2, название окна или же рабочее окно которое указано). Если после workwindow поставить 1 (как я понял, это количество пикселей которые найдет пилот и прекратит дальнейший поиск), то он все равно при рабочем варианте ищет все 4 пикселя которые там есть.
Вместо ctrl+a я пробывал указывать окно командами:
set #win FindWindow (CORE)
set WorkWindow #win
и потом вместо workwindow подставлял переменную #win
Но все равно стоит перекрыть область где сидят искомые пиксели - не находится Может я что-то не так делаю ? Или подскажите пожалуйста, как можно еще попробовать?
А еще постоянно вылазиет вот такая ошибка:
жмакаешь ок какое-то время она больше не вылазиет, не смотря на ошибку все работает вродебы дальше также, как и работало.
workwindow указывается ВМЕСТО типа поиска
Кстати, зачем обычно использовать abs, если ищете в окне (в оконных координатах)?
set WorkWindow
left 400, 300
stop_script
У меня такая же проблема, но не одно из выше предложных решений мне не помогло
Возможно у вас появилось свежее решение?
Попробуйте уменьшить изображение и область поиска.
Обязательно исключите черный цвет из картинки (нулевой). Для этого закрасьте любым несущественным цветом левый верхний пиксель изображения, после чего закрасьте все нулевые пиксели в этот же цвет. Данные точки будут проигнорированы при поиске.
И самое главное. Хендл указывается ВМЕСТО типа поиска, не следом за ним.
спасибо совет полезный, но на сколько я знаю поиск цвета не ищет картинки... Или я ошибаюсь и не понял вашу мысль?
эмм... я про финдимидж говорил. У нас тут эпидемия одного открывшегося бага. Думал опять он.
Вообще этот метод работает не всегда. Зависит от приложения. Окно сворачивать нельзя - только перекрывать. Ну могу предложить попробовать финдимидж, раз уж коснулись его.
ставишь виртуал писи, в ней ставишь вин, запукаешь приложение, пилота, и будет тебе всегда активное окно на первом плане и прочей автономной фихнёй... сворачиваешь машину и занимаешься своими делами, я так несколько браузерных игр играю, точнее они сами играются ... в некоторых уже заблочили за использование бота
Как показала практика, то шанс бана ничтожно мал даже при бездумном использовании. Если еще чуток думать мозгами, то вероятность стремится к нулю.
долго использовал версию 1.07 для одной онлайн ява игры, можно было перекрывать другими окнами, играть в игры, делать вообще все, что угодно, но вот в новых версиях это вообще не работает, стоит перекрыть любым окном и все...
А что именно отваливается? Клики? Клавиши? Проверки цвета? Первые два и сейчас шуршат нормально, проверки цвета никогда и не было в перекрытых...
Добрый день! Прошу помощи )
Есть 5 окон эмуляторов андроида. Там нашел дочернее окно но не могу получить цвет пикселя в этих окнах (
Пробовал get color, findcolor,
Там с какими-то эмуляторами были проблемы. Могу ошибиться, но вроде Nox не очень хотел работать с перекрытыми, а вот Memu полет был нормальный. Зачастую нужно искать не дочернее, а родительское окно. Так же при нажатии ctrl+a теперь в лог скидывается цепочка окон для поиска по хендлу (перекрытые) и был ли успешен поиск окна с которого собственно возможно произвести захват в перерытом состоянии.
Не получилось найти картинку а эмуляторах блюстак и мему, аеро гласс не помог, мало ли кому будет полезно, не тратьте время )
log clear
set #ownerHandle findwindow (GoGi)
//Поиск флота
set #flot findimage (16, 55 91, 395 (flot.bmp) %arr 2 90 20 15 #ownerHandle)
if #flot > 0
log Картинка найдена
left %arr [1 1] %arr [1 2]
end_if
wait 2s
set #flot findimage (16, 55 91, 395 (flot.bmp) %arr #ownerHandle 90 20 15)
set #flot findimage (16, 55 91, 395 (flot.bmp) %arr #ownerHandle 90 20 15)
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)