[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
-
Maza Faka
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Народ, подскажите , как в установщике галочку поставить . Что надо прописать?
Вот код :
Run("IE8-WindowsXP-x86-RU-mui.exe")
WinWaitActive ("Установка Internet Explorer")
Send ("{ENTER}")
Send ("{ENTER}")
ControlClick('Установка Internet Explorer','','&Нет, перезагрузить компьютер позже >') -????
Вот код :
Run("IE8-WindowsXP-x86-RU-mui.exe")
WinWaitActive ("Установка Internet Explorer")
Send ("{ENTER}")
Send ("{ENTER}")
ControlClick('Установка Internet Explorer','','&Нет, перезагрузить компьютер позже >') -????
-
Иск
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Цитата semiono:
что не так?

WinWaitActive() будет ждать окно, пока оно не активируется, но ведь если мы прячем окно, как оно будет активироваться? скрипт будет вечно ждать это окно.
Цитата Painkiller:
как в установщике галочку поставить . Что надо прописать?
Трудно сказать, не зная заранее данных окна и его элементов...
Можно попробовать так:
Код:
что не так?
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

WinWaitActive() будет ждать окно, пока оно не активируется, но ведь если мы прячем окно, как оно будет активироваться? скрипт будет вечно ждать это окно.
Цитата Painkiller:
как в установщике галочку поставить . Что надо прописать?
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Трудно сказать, не зная заранее данных окна и его элементов...
Можно попробовать так:
Код:
Код: Выделить всё
ControlCommand('Установка Internet Explorer', '', 'CheckBox1', 'Check')-
Иск
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Painkiller, можно попробовать через внутренние идентификаторы окна (но как сказал Креатор мы без данных не поможем), читайте справку..
а самый простой способ - нажмите Таб несколько раз, пока не дойдёте до выделения места с галкой, потом нажмите Пробел и дальше Таб до выделения кнопки, куда нажимаете Ввод..
WinWaitActive ("Установка Internet Explorer")
Send ("{ENTER}")
Send ("{ENTER}")
; если здесь нужно нажимать галку, то следущие строки находятся здесь, если нет - перенсите их
Send ("{TAB}")
Send ("{SPACE}")
ControlClick('Установка Internet Explorer','','&Нет, перезагрузить компьютер позже >') -????
а самый простой способ - нажмите Таб несколько раз, пока не дойдёте до выделения места с галкой, потом нажмите Пробел и дальше Таб до выделения кнопки, куда нажимаете Ввод..
WinWaitActive ("Установка Internet Explorer")
Send ("{ENTER}")
Send ("{ENTER}")
; если здесь нужно нажимать галку, то следущие строки находятся здесь, если нет - перенсите их
Send ("{TAB}")
Send ("{SPACE}")
ControlClick('Установка Internet Explorer','','&Нет, перезагрузить компьютер позже >') -????
-
Иск
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Наверное я плохо объяснил и потом еще больше все запутал... в общем я решил эту проблему через пиксельсерч. По крайней мере изменения я теперь отслеживаю относительно цвета. Осталось только прописать что бы он в случае изменений делал одно, а если изменений нет- другое
Всем спасибо за помощь. Автоит классная вещь! 
На офф форуме там в основном только всякие боты к играм рассматриваются, пару идей я взял оттуда, но все равно пришлось по-другому все делать - у меня цвета не фиксированые были...
Всем спасибо за помощь. Автоит классная вещь! 
На офф форуме там в основном только всякие боты к играм рассматриваются, пару идей я взял оттуда, но все равно пришлось по-другому все делать - у меня цвета не фиксированые были...
-
Maza Faka
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Цитата Painkiller:
Галку надо поставить "Нет, перезагрузить компьютер позже".
В комплекте с AutoIt'ом идёт утилита, называется «
Галку надо поставить "Нет, перезагрузить компьютер позже".
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
В комплекте с AutoIt'ом идёт утилита, называется «
AutoIt Window Info Tool
», с её помощью можно посмотреть класс элемента (в данном случае чекбокса/птички), и использовать его при вызове ControlClick().-
no_sound
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Помогите пож еще раз...наверное замучил уже...Я считываю 4 раза изменение полоски состояния, получаю 4 значения $res. Допустим, $res1=207, $res2=208, $res3=355, $res4=355. Теперь мне надо что бы в программа сравнила их по критериям, которые я задал. Т.к. Критериев для обработки много, я путаюсь и не знаю что с ними делать
. Пробовал через IF -Then, как показано ниже, но выдает ошибку
If $res1$res2, $res2=$res4 Then
If $res1$res2^ ERROR
В связке If-Then-ElseIf таже ошибка. Может параметры не правильно заданы и нельзя так их вводить, тоесть через запятую?
Просто сразу после того как первый IF не соответствует действительности вылетает ошибка. Как сделать что бы программа из предложеных условий выбирала нужное и действовала согласно результату? Упростить до двух считываний изменений и потом сравнения их нельзя, надо что бы именно 4 сравнивало. Что посоветуете?...
if $res1=$res4 Then
Send("1")
EndIf
If $res1$res2, $res2=$res4 Then
Send("1")
EndIf
If $res1$res2, $res2$res3, $res3=$res4 Then
Send("1")
EndIf
If $res1=$res2, $res2$res3, $res3=$res4 Then
Send("1")
EndIf
If $res1=$res3, $res3$res4 Then
Send("5")
EndIf
If $res1$res2, $res2$res3, $res3$res4 Then
Send("5")
EndIf
If $res1$res2, $res2=$res3, $res3$res4 Then
Send("5")
EndIf
Если пишу так:
ElseIf $res1=$res2$res3=$res4 Then
Send("5")
то с ошибкой не выкидывает, но нажимает всегда "1", даже если видно что полоско двигается вперед и назад...
Попробовал задать по-другому :
ElseIf $res1=$res2
. Пробовал через IF -Then, как показано ниже, но выдает ошибку If $res1$res2, $res2=$res4 Then
If $res1$res2^ ERROR
В связке If-Then-ElseIf таже ошибка. Может параметры не правильно заданы и нельзя так их вводить, тоесть через запятую?
Просто сразу после того как первый IF не соответствует действительности вылетает ошибка. Как сделать что бы программа из предложеных условий выбирала нужное и действовала согласно результату? Упростить до двух считываний изменений и потом сравнения их нельзя, надо что бы именно 4 сравнивало. Что посоветуете?...
if $res1=$res4 Then
Send("1")
EndIf
If $res1$res2, $res2=$res4 Then
Send("1")
EndIf
If $res1$res2, $res2$res3, $res3=$res4 Then
Send("1")
EndIf
If $res1=$res2, $res2$res3, $res3=$res4 Then
Send("1")
EndIf
If $res1=$res3, $res3$res4 Then
Send("5")
EndIf
If $res1$res2, $res2$res3, $res3$res4 Then
Send("5")
EndIf
If $res1$res2, $res2=$res3, $res3$res4 Then
Send("5")
EndIf
Если пишу так:
ElseIf $res1=$res2$res3=$res4 Then
Send("5")
то с ошибкой не выкидывает, но нажимает всегда "1", даже если видно что полоско двигается вперед и назад...
Попробовал задать по-другому :
ElseIf $res1=$res2
-
Creat0R
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Цитата Painkiller:
всё равно не хочет переключать на другой RadioButton. Чё делать?
Попробовать так:
Код:
всё равно не хочет переключать на другой RadioButton. Чё делать?
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Попробовать так:
Код:
Код: Выделить всё
ControlCommand('Установка Internet Explorer', '', 'Button3', 'Check')-
Иск
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Всёравно не пашет. Ладно я убью процесс просто . Только как сделать, чтобы скрип подождал некоторое время?
-
amel27
-
SvetlanaK
Re: [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
Добрый день! а не подскажет ли кто, можно ли в АИ отслеживать время? и подобно виндусовому планировщику задач запускать нужные функции по назначенному времени?