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

7 страниц V « < 4 5 6 7 >  
Ответить в эту темуОткрыть новую тему
> Новая Версия Uopilot V.2.31 (15.08.2012), Оффициальный сайт. Скачать. Последняя версия.
_LESTAT_
сообщение 21.10.2012, 18:00
Сообщение #101


****

Apprentice
Сообщений: 103
Регистрация: 12.3.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 13.512
Возраст: 25



Последнее время замучился с хинтами, то появляютсья как надо, а то совсем не в том месте куда указывают координаты, я даже специально переменные вкоторых записаны координаты куда хинтить в лог выводил, прямо перед хинтом , в логе все верно, проверял, а хинт всеравно появляеться совсем не в том месте где надо.
Добавлено на следующий день: С хинтами разобрался, просто они появляются по абсолютным координатом, хотя в скрипте и указано рабочее окно, а так же не стоит abs , приходиться определять размеры и положение рабочего окна и добавлять позицию окна к относительной позиции места где должен появится хинт.

Так же скрипты вов ремя работы продолжают вывлетать сошибками вабсолютно случайных местах, при этом в скрипте ошибок нет. Пришлось заводить специальный скрипт который отлавливает появление окон с ошибками , закрывает их и перезапускает скрипт.
Цитата
set #em findwindow (UoPilot Message ) //Поиск информационных окон, об ошибках в скриптах
if #em > 0
//pause_script 4
showwindow #em
sendex {Enter} //@{F4} //Посылаем Enter в такие окна
wait 3s
set #er #er + 1
set logging Вылезло #er -ое окно с ошибкой скрипта, закрываем.
//alarm
start_script 0
set #em 0
end_if
wait 2s
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
xolost
сообщение 22.10.2012, 10:21
Сообщение #102


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



По-поводу хендла.
https://forum.uokit.com/index.php?showtopic=24803

Суть этой функции(указывание хендла) - в автоматическом режиме - нашел, привязался, работаем.

А если это не работает и что бы работало, нужно запускать доп. софт что бы узнать дочерний фигерний хендл (истинный), который потом указываем в пилоте, что бы пилот привязался к нему, или писать скрипт как в последнем посте по ссылке выше - это баг, и даже, я бы сказал - бред.
С таким же успехом, проще написать скрипт, который будет эмулировать ctrl+a, что бы всё работало.

Более того, если ctrl+a за микросекунду успешно вяжется к любому приложению, лишь наведя мышку на окно нужное, то и поиск автоматический тоже должен вполне уметь это делать сам. (это логично).

p.s. наткнулся на эту ссылку
https://forum.uokit.com/index.php?showtopic=24803
со 2 по 4 страницу парнишка пытается привязаться... такая же проблема. 3 страницы парился с этой привязкой! и напряг всех вокруг. В итоге у него получился громоский скрипт, который ещё и кликает и ещё что-то делает(жуть вообщем), что бы привязаться.
Этого быть не должно...

Кнайт, пожалуйста, порадуй нас - нубов, скажи, что подумаешь как это исправить...

спасибо!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 22.10.2012, 11:59
Сообщение #103


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Радую, но другим способом
WindowFromCursor
WindowFromPoint
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2012, 13:27
Сообщение #104


***********

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



Цитата
А если это не работает и что бы работало, нужно запускать доп. софт что бы узнать дочерний фигерний хендл (истинный), который потом указываем в пилоте, что бы пилот привязался к нему, или писать скрипт как в последнем посте по ссылке выше - это баг, и даже, я бы сказал - бред.

И что страшного в том, чтобы один раз посмотреть, где в дереве находится окно? Потом get window и все работает.

// Ты дал не ту ссылку.


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


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Цитата(WKnight @ 22.10.2012, 12:59) *

Радую, но другим способом
WindowFromCursor
WindowFromPoint

Порадовал(IMG:style_emoticons/default/smile.gif)
WindowFromCursor - супер, сойдет решение..
WindowFromPoint - не нашел описания нигде... догадываюсь что делает, но всё же, пример бы... если не трудно. Спасибо!

И что страшного в том, чтобы один раз посмотреть, где в дереве находится окно? Потом get window и все работает.
Как минимум в том, что без этого софта не заставить работать, как сказано в описании команды пилота. Пример мой собственный - у меня не работает этот виндовсканер, значит я в пролете по такой схеме.

А в описании сказано:
Привязка к окну: нет.
Работа со свернутым окном: да.
FindWindow (<заголовок окна | PID>)
<заголовок окна> - полное название окна либо его часть.
<PID> - номер идентификатора процесса.
Указывается только один из параметров: либо заголовок, либо PID, но не оба сразу.
Порядок поиска следующий:
1. ищем указанную строку в качестве точного названия окон
2. в качестве класса окон
3. в начале названия окон
4. в середине названий окон
5. в качестве 'pid' окна


Примеры
set #handleWin findwindow (Lineage II)
set workwindow #handleWin
UOPilot привяжется к последнему активному окну Lineage 2

Тут ведь не сказано, что 100% окон не будет привязываться и поэтому не забывайте качать, устанавливать, запускать виндсканер - искать им хендл и т.д. и т.п.

Давай будем честны, всё должно работать хорошо, стремиться нужно к автоматизации, я уверен, если кнайт найдет время, поставит пару запятых где нужно и 90%+ окон будет находиться автоматом, как изначально и было запланировано.

// Ты дал не ту ссылку.
Ссылку верную дал.. что бы было понятно почему я ною и пример последнего поста со скриптом по поиску от Лестата на 30+ строчек... - ну это же жесть..
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
_LESTAT_
сообщение 22.10.2012, 15:52
Сообщение #106


****

Apprentice
Сообщений: 103
Регистрация: 12.3.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 13.512
Возраст: 25



Цитата
А если это не работает и что бы работало, нужно запускать доп. софт что бы узнать дочерний фигерний хендл (истинный), который потом указываем в пилоте, что бы пилот привязался к нему, или писать скрипт как в последнем посте по ссылке выше - это баг, и даже, я бы сказал - бред.

Что не так с моим способом, я вам даже пример рабочий для блокнота написал.
Плюсы его в том, что мышь не задействуется. Минусфы, что занимает чуть побольше, и всего один разок, надо узнать расположение нужного дочернего в дереве окон приложений, что занимает не больше минуты с помощью Window Scaner.
Насчет последнего моего примера, так он такой большой потому, что нужное рабочее окно меняет свою позицию случайно после каждого перезапуска приложения. Потому я и перебираю все возможные позиции и ищю в них нужный фрагмент картинки, который точно есть в игровом дочернем окне, которое мне и нужно. И проще этот процесс тебе никто не сделает, хочешь автоматизации ?? прописывай все возможные варианты как и я.
Хотя и его можно урезать for'м, заставив проверять не определенные места, а все возможные, если перебирать все окна подряд. Пока хадл не равен 0 идем вперед(нестим, чилдим), как стал равен, разворачиваемся шаг назад и идем дальше другим путем.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 22.10.2012, 16:21
Сообщение #107


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Цитата
WindowFromPoint - не нашел описания нигде...

Единственый официальный источник это хистори встроенное в пилот. Благодарными энтузиастами поддерживается Вики, основанная на этом хистори. Либо там, либо там, обязательно должно быть хоть какое-то описание. Если его нет ни там, ни там, то это нонсенс типа команды eval...
Цитата
Давай будем честны, всё должно работать хорошо

Стремимся к этому, можно сказать, всеми силами, но не все нам подвластно... Кроме того "многа букаф", в настоящий момент сильно осложняют понимание написанного, читать долго (IMG:style_emoticons/default/smile.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
xolost
сообщение 22.10.2012, 16:46
Сообщение #108


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Понял что по-поводу хендла я уже не смогу убедить, все самые клёвые доводы уже выдал(IMG:style_emoticons/default/smile.gif)
Тогда забыли про него и вернемся к
WindowFromPoint - не нашел описания нигде...
Единственый официальный источник это хистори встроенное в пилот. Благодарными энтузиастами поддерживается Вики, основанная на этом хистори. Либо там, либо там, обязательно должно быть хоть какое-то описание. Если его нет ни там, ни там, то это нонсенс типа команды eval...


В том и штука, что ни в вике, ни в хистори пилота не нашел.
даже попробовал загуглить, там к уопилоту не находит такой команды..
Может напишешь здесь как эта команда работает?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2012, 17:01
Сообщение #109


***********

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



Цитата
Давай будем честны, всё должно работать хорошо

Дык а что вы предлагаете? Архитектура приложений такова, что в запущенном вами блокнотике десяток окон. Посылать нажатия во все подряд? =\
Кроме windowscanner есть и другие приложения которые легко выводят дерево окон.


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


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Цитата(DarkMaster @ 22.10.2012, 18:01) *

Дык а что вы предлагаете? Архитектура приложений такова, что в запущенном вами блокнотике десяток окон. Посылать нажатия во все подряд? =\

Только в то, которое имеет название, которое указываем при поиске в пилоте.... Или кто-то планирует открывать 10 блокнотов с идентичными названиями и ждать что пилот угадает к какому надо прицепиться? конечно нет, но если название такое только одно, то и ошибки быть не должно...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2012, 17:46
Сообщение #111


***********

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



Там нет ошибки. Один запущенный блокнот имеет несколько окон. Каким образом вы предлагаете чтобы пилот выбирал нужное? Читал мысли? Необходимое для отправки клавиш окно в блокноте даже не имеет названия. Одна вкладка браузера может иметь несколько _десятков_ окон.

Сообщение отредактировал DarkMaster - 22.10.2012, 18:20


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


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Пожалуйста, не надо ругаться.
Хорошо, я изменю метод изложения информации.

-Я обычный юзер, немного знаком с уопилот.
-Вдруг, в один день узнаю что существует оператор findwindow
-Лезу в описание оператора в вики, читаю и вижу:

FindWindow (<заголовок окна | PID>)
<заголовок окна> - полное название окна либо его часть.
<PID> - номер идентификатора процесса.
Указывается только один из параметров: либо заголовок, либо PID, но не оба сразу.
Порядок поиска следующий:
1. ищем указанную строку в качестве точного названия окон
2. в качестве класса окон
3. в начале названия окон
4. в середине названий окон
5. в качестве 'pid' окна


[править] Примеры
set #handleWin findwindow (Lineage II)
set workwindow #handleWin
UOPilot привяжется к последнему активному окну Lineage 2.


И вот как обычный юзер, я понимаю, что я создаю например Гр<вырезано анти-матом> блокнот, с гребаным названием "Test13452345345276567 - блокнот"
Т.е. заголовок этого гребаного блокнота - поясню - "Test13452345345276567 - блокнот" (без кавычек)
И вот я открываю этот блокнот, получается что он у меня открыт на раб. столе и одном экземпляре!!!!!
Теперь возвращаюсь к описанию и подставляю этот гр<вырезано анти-матом> заголовок

Запускаю и нифига не привязывается!
Я пробую второй вариант - узнаю PID этого гребаного блокнота открытого через ПИЛОТ!!!(кнопка при клике по ней выпадает меню с пидами всех процессов запущенных - нахожу нужный по названию приложения - вбиваю в код и опять вижу что нифига не работает!!!!

Какой вывод я делаю!? - Либо описание неверное, либо этот оператор НЕ- -РА-БО-ТА-ЕТ

Я не хочу ругаться, если и сейчас не понятно о чем я говорю, просто давай забудем об этой штуке и всё....
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 22.10.2012, 18:22
Сообщение #113


***********

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



Это незнание матчасти API. Вы запускаете программу, которая взаимодействует с API и хотите получить нужный результат без примитивных основ. Тут как бы без особых вариантов... Кстати большинство игр на ура цепляется по самой простой схеме.
Естественно никто архитектуру всех программ менять не будет. И делать базу всех возможный приложений тоже... Это все равно, что не зная игры отсылать в нее всякие кнопочки и ждать прокачки.

// Извиняюсь за резкость.

Сообщение отредактировал DarkMaster - 22.10.2012, 20:58


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


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Цитата
В том и штука, что ни в вике, ни в хистори пилота не нашел.

Смотрим описание в истории развития пилота к версии 2.30.
Цитата
Запускаю и нифига не привязывается!

Привязку легко проверить командами типа showwindow.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
xolost
сообщение 23.10.2012, 15:12
Сообщение #115


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Цитата(WKnight @ 23.10.2012, 12:51) *

Смотрим описание в истории развития пилота к версии 2.30.

Да это я попутал, не знал что там именно хистори есть (сегодня Мастер подсказал), думал речь идет о "помощь по языку скриптов", а оказывается целая хистори есть))Спасибо)

Цитата(WKnight @ 23.10.2012, 12:51) *

Привязку легко проверить командами типа showwindow.

Понятно, спасибо
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 24.10.2012, 14:17
Сообщение #116


***********

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



log [ 1 1 ]

Первая скобка игнорируется и в лог не выводится.


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


******

Expert
Сообщений: 517
Регистрация: 17.6.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.035



Цитата(DarkMaster @ 24.10.2012, 15:17) *

log [ 1 1 ]

Первая скобка игнорируется и в лог не выводится.

Ага, старый баг, хотел о нем написать, но всё откладывал на потом.. ну да ладно.

А хотите крутятский баг?)))

while #x = #x1 or #y = #y1
or перепутано с and
т.е. что бы было or нужно писать and и наоборот.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Destruction
сообщение 26.10.2012, 23:03
Сообщение #118


**********

Группа: Администраторы
Наличность: 1
Пользователь №: 1.833



Цитата(xolost @ 26.10.2012, 23:39) *

while #x = #x1 or #y = #y1
or перепутано с and
т.е. что бы было or нужно писать and и наоборот.

Код
set #x 1
set #x1 1
set #y 1
set #y1 2
while #x = #x1 or #y = #y1
    msg Бага нет
    end_script
end_while
msg Баг есть
end_script


Вы ничего не путаете ?


--------------------
Telegram: @tatikom
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 26.10.2012, 23:18
Сообщение #119


***********

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



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


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


*********

ex-Moderator UOPilot
Сообщений: 2.440
Регистрация: 8.10.2010
Группа: Пользователи
Наличность: 0
Из: Киев
Пользователь №: 13.093



кстати, неплохо бы отдельные логические выражения брать в круглые скобки...


--------------------
Полезные советы - читать всем! UOWiki
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

7 страниц V « < 4 5 6 7 >
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

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