Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Не работает findimage если указать хэндл окна напрямую
Avenjah
сообщение 19.12.2013, 3:26
Сообщение #1


*

Registred
Сообщений: 3
Регистрация: 19.12.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.504
Возраст: 25



Здравствуйте

Проблема возникла, когда попытался засавить пилот искать картинку не привязывая пилот к окну, а просто указав его хэндл в самом файндимидже. (С недавних пор, говорят, можно и так (IMG:style_emoticons/default/smile.gif) )
Это рабочий вариант:
set #Skyna findwindow (Skyna)
set workwindow #Skyna
:start
set $a findimage (217 78 409 200 (D:\Q.bmp) %crds 2 60 10 10)
if $a > 0
wait 10s
send F1
wait 1s
send 6
end_if
goto start

Как только меняю на этот, картинку находить перестает.
set #Skyna findwindow (Skyna)
:start
set $a findimage (217 78 409 200 (D:\Q.bmp) %crds #Skyna 60 10 10)
if $a > 0
и т.д
Версия пилота - 2.34
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 19.12.2013, 3:31
Сообщение #2


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27725
Пользователь №: 11.279



Цитата
С недавних пор, говорят, можно и так

Возможность зависит от приложения. Сворачивать нельзя.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Avenjah
сообщение 19.12.2013, 4:46
Сообщение #3


*

Registred
Сообщений: 3
Регистрация: 19.12.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.504
Возраст: 25



Приложение - World of Warcraft, переименованный, окно развернуто, ничем не закрыто. Получается, в вове нельзя?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 19.12.2013, 5:31
Сообщение #4


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27725
Пользователь №: 11.279



только что проверил на личе в меню ввода пароля. Все работало, даже в перекрытом окне. Но не факт что на других версиях оно будет работать. Так же есть какие-то индивидуальные особенности системы, которые пока не выявлены и отрицательно влияют на возможность поиска. Возможно необходим включеный аеро.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
FatalFury
сообщение 20.12.2013, 5:47
Сообщение #5


**

Neophyte
Сообщений: 21
Регистрация: 10.4.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 15.981
Возраст: 20



Цитата(Avenjah @ 19.12.2013, 4:26) *

Здравствуйте

Проблема возникла, когда попытался засавить пилот искать картинку не привязывая пилот к окну, а просто указав его хэндл в самом файндимидже. (С недавних пор, говорят, можно и так (IMG:style_emoticons/default/smile.gif) )
Это рабочий вариант:
set #Skyna findwindow (Skyna)
set workwindow #Skyna
:start
set $a findimage (217 78 409 200 (D:\Q.bmp) %crds 2 60 10 10)
if $a > 0
wait 10s
send F1
wait 1s
send 6
end_if
goto start

Как только меняю на этот, картинку находить перестает.
set #Skyna findwindow (Skyna)
:start
set $a findimage (217 78 409 200 (D:\Q.bmp) %crds #Skyna 60 10 10)
if $a > 0
и т.д
Версия пилота - 2.34

честно сказать не проверял ничего, но почему не использовать workwindow Skyna?
ну да скрипт привяжется к окну(точнее сказать все что будет после этой строки) но окно не развернется без showwindow, а когда впишешь нужное можешь поменять workwindow на другое, нужное окно, разве не проще?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 20.12.2013, 6:41
Сообщение #6


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27725
Пользователь №: 11.279



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

// FatalFury, что за тишина в скайпе? Создается впечатление, что это мне надо.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Avenjah
сообщение 21.12.2013, 4:46
Сообщение #7


*

Registred
Сообщений: 3
Регистрация: 19.12.2013
Группа: Пользователи
Наличность: 0
Пользователь №: 16.504
Возраст: 25



Цитата(FatalFury @ 20.12.2013, 4:47) *

честно сказать не проверял ничего, но почему не использовать workwindow Skyna?
ну да скрипт привяжется к окну(точнее сказать все что будет после этой строки) но окно не развернется без showwindow, а когда впишешь нужное можешь поменять workwindow на другое, нужное окно, разве не проще?

Это только часть скрипта с которой возникают проблемы. Мне нужно одновременно проверить наличие или отстуствие в одном из двух окон одинакового изображения. Причем дальше идут еще три ифа в зависимости от того найдено ли изображение в одном/втором или сразу в обоих окнах. То есть, проще как раз сделать без вокрвиндоу. Получилось бы что-то вроде:
Код

set $a findimage (217 78 409 200 (D:\Q.bmp) %crds #Skyna 60 10 10)
set $b findimage (217 78 409 200 (D:\Q.bmp) %crds #Barth 60 10 10)
        if $b > 0 and $a > 0
goto action

А иначе мне приходится проверять наличие рисунка в одном окне, менять хэндл, проверять в другом и если в обоих или в первом рисунок есть - менять хэндл обратно.
Аэро включил, не помогло (IMG:style_emoticons/default/sad.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 21.12.2013, 16:23
Сообщение #8


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27725
Пользователь №: 11.279



дальше могу дать лишь дебильные советы отключить защиты фаерволов/антивиров.

Вообще насколько я понимаю, то используется та же технология, которая позволяет без разворачивания окна навести в панели задач на окно и там будет превьюшка. Причины почему не работает у некоторых до сих пор не ясны... Ну и еще раз повторюсь, нельзя сворачивать окно в котором происходит поиск - только перекрывать.

Если окно вытащить на поверхность, то находит при задании хендла в методе поиска?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 27.4.2024, 21:40
Designed by Nickostyle