|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:. |
|
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.
|
(*.*) Сообщения: 36561 |
Внимание! В связи с созданием отдельного форума по AutoIt, эта тема переводится в архивное состояние. Если у вас есть вопрос, создайте новую тему или поднимите существующую, если в ней обсуждается аналогичная проблема. Пожалуйста, не создавайте тем с названием "Помогите!" или "Нужна помощь по AutoIt". Это и так понятно ![]() ![]() Сайт программы Русская справка Коллекция AutoIt скриптов от Sanja Alone Коллекция AutoIt скриптов от MSFN (могут быть устаревшие). Справочник по командам rundll32 (команды запуска диалоговых окон и не только...) AutoIt скрипты - введение и FAQ (статья содержит вводную информацию по AutoIt, а также ответы на ЧаВо). Архивы старых тем по AutoIt или они же в 7z архиве (версии для печати) - 846 кб (настоятельно рекомендуется к прочтению/поиску) (он же прикреплен в шапке) Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений". Таким образом, если вы хотите узнать как установить Winamp 5.x при помощи AutoIt, то создайте тему [autoit] Winamp 5.х (если таковой еще нет на форуме). Проверить наличие тем можно при помощи поиска или фильтров. Цитата Vadikan:
|
||
------- Отправлено: 00:02, 05-02-2006 |
D_Master
Сообщения: n/a |
|
Отправлено: 12:01, 05-12-2008 | #1251 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 604
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 12:29, 05-12-2008 | #1252 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать опять обращусь с тем же вопросом:
почему-то не пашет у меня функция _IEFormSubmit($oForm) название кнопки я указал правльно, как в дебагере указано.... зато при посылке "Enter", подтверждение происходит..... че я не так делаю?? код #include <IE.au3> $sURL = "http://192.168.1.1/" $oIE = _IECreate($sURL) $oName = _IEGetObjByName($oIE, "username") $oPass = _IEGetObjByName($oIE, "password") $oForm = _IEFormGetObjByName($oIE, "login") _IEFormElementSetValue($oName, "admin") _IEFormElementSetValue($oPass, "admin") _IEFormSubmit($oForm) --> IE.au3 V2.4-0 Warning from function _IEFormGetObjByName, $_IEStatus_NoMatch --> IE.au3 V2.4-0 Error from function _IEFormSubmit, $_IEStatus_InvalidDataType видимо, просто не может найти имя еще вопрос, как мона нажать кнопку в окне ие, если нет имени?..... во че выдает дебагер <INPUT onclick="gotolocation('connection0')" type=image src="../html/images/connection1.jpg" target="_self"> и все.... |
Последний раз редактировалось CrazyNNM, 05-12-2008 в 13:11. Отправлено: 12:55, 05-12-2008 | #1253 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать DobroeZlo,
Цитата:
P.S Уже не помню для чего, но мне как то тоже подобное нужно было, единственное что пришло на ум, так это пропарсить весь скрипт другим, внешним скриптом, добавив в начало скрипта глобальную переменную (к примеру $sCurrent_FuncName), и в начало каждой функции присвоить этой переменной значение имени функции. Но вопрос в том, насколько оно нужно? |
|
------- Отправлено: 12:58, 05-12-2008 | #1254 |
Пользователь Сообщения: 69
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
Не размещал тут свой код, чтобы не забивать голову тому, кто попробует... Сам скрипт: Run("\\srv\soft\Symantec\updat32.exe") WinWait("SARC Intelligent Updater","&Да") WinActivate("SARC Intelligent Updater","&Да") If WinActive("SARC Intelligent Updater","&Да") Then ControlClick("SARC Intelligent Updater","&Да","[ID:6]") EndIf WinWait("SARC Intelligent Updater","OK") WinActivate("SARC Intelligent Updater","OK") If WinActive("SARC Intelligent Updater","OK") Then ControlClick("SARC Intelligent Updater","ОК","[ID:2]") EndIf Exit Глюк начинается на строке WinWait("SARC Intelligent Updater","OK") т.к. это окно просто не удается отловить, пробовал поразному, но моих познаний в AutoIt, видимо, недостаточно... |
|
Отправлено: 14:42, 05-12-2008 | #1255 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать morres,
Цитата morres:
Цитата morres:
![]() Цитата morres:
Если второе, то видимо проблема в том, что окно создаётся немного раньше, но оно просто скрыто, тут можно попробовать ждать видимости окна: _WinWaitVisible("SARC Intelligent Updater", "OK") Func _WinWaitVisible($sTitle, $sText, $iTime=0) Local $iTimer = -1 If $iTime > 0 Then $iTimer = TimerInit() While Not BitAND(WinGetState($sTitle, $sText), 2) Sleep(10) If $iTime > 0 And (TimerDiff($iTimer) / 1000) >= $iTime Then ExitLoop WEnd Return Number(BitAND(WinGetState($sTitle, $sText), 2) = 2) EndFunc |
|||
------- Отправлено: 15:05, 05-12-2008 | #1256 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Новая версия утилиты Au3ToPost 1.8!
(Архив включает откомпилированную версию). Список изменении: Цитата:
|
|
------- Отправлено: 15:39, 05-12-2008 | #1257 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать morres,
Цитата:
эта функция подождет пока окно будет активным)) еще есть sleep поставь 1-2 сек между WinWait и ControlClick PS: думаю, твой код сильно перегружен лишним например, не вижу смысла в WinActivate PPS: попробуй так завершить обновление: WinWait("SARC Intelligent Updater","OK") ControlClick("SARC Intelligent Updater","ОК","[ID:2]") ; не обязательное if ProcessExists ("Имя Процесса") Then sleep (500) ControlClick("SARC Intelligent Updater","ОК","[ID:2]") Else Exit можешь в мой пример поставить вместо ControlClick должно пахать ![]() |
|
Отправлено: 21:30, 05-12-2008 | #1258 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать morres
Цитата:
![]() - окна "&Да" и "ОК" отличаются не только текстом, но и заголовком (там два пробела, а не один); - нелогично активировать окно для ControlClick (это обычно практикуют для Send); - ControlClick срабатывает не всегда (?), но можно поставить проверочный цикл: Run("\\srv\soft\Symantec\updat32.exe") WinWait("SARC Intelligent Updater","&Да") While WinExists("SARC Intelligent Updater","&Да") Sleep(200) ControlClick("SARC Intelligent Updater","&Да","Button1") WEnd WinWait("SARC Intelligent Updater","ОК") While WinExists("SARC Intelligent Updater","ОК") Sleep(200) ControlClick("SARC Intelligent Updater","ОК","Button1") WEnd |
|
Отправлено: 07:12, 06-12-2008 | #1259 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Цитата amel27:
тобишь, окно появилось, кнопка уже есть, но она не активна, скрипт по ней кликает и ничего не происходит. скрипт думает, что все прошло отлично))) насчет условного цикла, это вроде как, самое рациональное решение)) |
|
Отправлено: 01:16, 07-12-2008 | #1260 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[архив - Часть 2] AutoIt скрипты | Vadikan | AutoIt | 985 | 21-01-2008 09:58 | |
Вопрос - [Архив] Антивирусные программы - ОБЩИЕ ВОПРОСЫ | FOX RED | Защита компьютерных систем | 67 | 21-11-2007 15:05 | |
[Архив - Часть 1.3] AutoIt скрипты | biork | AutoIt | 503 | 09-06-2007 11:27 | |
[Архив - Часть 1.2] AutoIt скрипты | Dirk Diggler | AutoIt | 505 | 02-12-2006 11:00 | |
[Архив - Часть 1.1] AutoIt скрипты | EgOrus | AutoIt | 335 | 04-02-2006 16:58 |
|