Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

Закрытая тема
Настройки темы
[Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

(*.*)


Сообщения: 36561
Благодарности: 6694


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


Изменения
Автор: Vadikan
Дата: 21-01-2009
Описание: архив
Внимание!


В связи с созданием отдельного форума по AutoIt, эта тема переводится в архивное состояние. Если у вас есть вопрос, создайте новую тему или поднимите существующую, если в ней обсуждается аналогичная проблема.

Пожалуйста, не создавайте тем с названием "Помогите!" или "Нужна помощь по AutoIt". Это и так понятно Заголовок темы должен быть осмысленным.



Сайт программы
Русская справка
Коллекция AutoIt скриптов от Sanja Alone
Коллекция AutoIt скриптов от MSFN (могут быть устаревшие).


Справочник по командам rundll32 (команды запуска диалоговых окон и не только...)

AutoIt скрипты - введение и FAQ (статья содержит вводную информацию по AutoIt, а также ответы на ЧаВо).

Архивы старых тем по AutoIt или они же в 7z архиве (версии для печати) - 846 кб (настоятельно рекомендуется к прочтению/поиску)
(он же прикреплен в шапке)


Данная тема предназначена для общих вопросов по AutoIt. Вопросы по установке приложений при помощи AutoIt следует задавать в соответствии с правилами форума "Автоматическая установка приложений". Таким образом, если вы хотите узнать как установить Winamp 5.x при помощи AutoIt, то создайте тему [autoit] Winamp 5.х (если таковой еще нет на форуме). Проверить наличие тем можно при помощи поиска или фильтров.
Цитата Vadikan:
В теме уже свыше 500 сообщений и поиск нужной информации в ней усложняется. Есть предложение собрать все решения (скрипты) и разместить их на Wiki по принципу "один скрипт - одна статья wiki", добавляя статьи в категорию Autoit. Речь, в принципе, идет об общих решениях, а не о скриптах для установки конкретной программы. Название статьи, очевидно, должно отражать назначение скрипта. Затем можно в шапке просто разместить ссылки на статьи Wiki.

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:02, 05-02-2006

 
D_Master


Сообщения: n/a

Профиль | Цитировать


Помогите пожалуйста избавиться от иконки в трее
Добавляю код:
Код: Выделить весь код
AutoItSetOption("TrayIconHide", 0)
AutoItSetOption("TrayIconDebug", 0)
Всё равно иконка показывается...

Отправлено: 12:01, 05-12-2008 | #1251



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Maza Faka

Ветеран


Сообщения: 604
Благодарности: 133

Профиль | Отправить PM | Цитировать


D_Master
Код: Выделить весь код
#NoTrayIcon

-------
Сообщение помогло? Не забудьте нажать на Полезное сообщение


Отправлено: 12:29, 05-12-2008 | #1252


Новый участник


Сообщения: 5
Благодарности: 1

Профиль | Отправить 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


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


DobroeZlo,
Цитата:
Есть какая нибудь функция для определения имени ?
Нет.

P.S
Уже не помню для чего, но мне как то тоже подобное нужно было, единственное что пришло на ум, так это пропарсить весь скрипт другим, внешним скриптом, добавив в начало скрипта глобальную переменную (к примеру $sCurrent_FuncName), и в начало каждой функции присвоить этой переменной значение имени функции. Но вопрос в том, насколько оно нужно?

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 12:58, 05-12-2008 | #1254


Пользователь


Сообщения: 69
Благодарности: 11

Профиль | Отправить 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
SARC Intellegent Updater, собственно, можно скачать с сайта Symantec! Меня интересует версия под Symantec AntiVirus 10.2 Corporate Edition Client.

Глюк начинается на строке WinWait("SARC Intelligent Updater","OK") т.к. это окно просто не удается отловить, пробовал поразному, но моих познаний в AutoIt, видимо, недостаточно...

Отправлено: 14:42, 05-12-2008 | #1255


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


morres,
Цитата morres:
Не очень понял чего именно недостаточно, ну если хотите подробностей, то пожалуйста... »
Всегда нужны подробности, читать мысли (через интернет тем более) ещё никто не научился.

Цитата morres:
Не размещал тут свой код, чтобы не забивать голову тому, кто попробует »
Попробует что? нет логики в этом, наоборот, нужно разместиь тестовый скрипт чтобы можно было что-то попробовать

Цитата morres:
Глюк начинается на строке WinWait("SARC Intelligent Updater","OK") т.к. это окно просто не удается отловить »
Что имеется в виду под «Отловить»? Скрипт останавливается на этой строчке, или проходит дальше не замечая окна (не нажимая кнопки)?
Если второе, то видимо проблема в том, что окно создаётся немного раньше, но оно просто скрыто, тут можно попробовать ждать видимости окна:

Код: Выделить весь код
_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

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 15:05, 05-12-2008 | #1256


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Новая версия утилиты Au3ToPost 1.8!
(Архив включает откомпилированную версию).

Список изменении:

Цитата:
v1.8 [05.12.2008]
+ Добавлено распознавание стиля <t_2> - стиль отвечающий за блочный комментарии (#CS...#CE).
+ Добавлено распознавание стиля <t_13> - стиль отвечающий за т.н аббревиатуры, например при вводе cw.
+ Добавлена поддержка преобразования выделенной части кода.
+ Добавлена опция предпросмотра результата.
+ Добавлена опция "Поверх всех окон" в главном меню.

* Опять предотвращена высокая загрузка ЦП, на этот раз загрузка была при снятой птичке "Ввести код вручную".
* Теперь при выборе обрабатываемого файла будет осуществляться проверка на его существование
* Переделан метод использования горячих клавиш (меньше нагрузки на главный цикл).
* Также теперь проверка на ввод данных (путь к файлу обработки и поле с кодом) производится вне цикла (WM_COMMAND).
* Теперь путь к SciTE в первую очередь определяется относительно папке AutoIt.
* Изменён принцип работы быстрого режима. По нажатию на со-вующий пункт меню главное окно прячется в трей, и программа работает в тихом режиме (обработка либо по хоткей CTRL + SHIFT + A, либо из пункта меню иконки в трее.
* Исправлена потенциальная ошибка при интеграции в SciTE - путь к папке AutoIt неверный если скрипт откомпилирован.
* Поправки в отображений некоторых элементов интерфейса.
* Код немного переписан в соответствии с последней версией AutoIt (3.2.12.1). Для совместимости с более старыми версиями раскомментируйте строчки начинающиеся с ";~ ...".
* Размеры GUI теперь ограничены.
* орфографические поправки (в коде и в Readme файле).
* Косметические поправки в коде.

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:39, 05-12-2008 | #1257


Новый участник


Сообщения: 5
Благодарности: 1

Профиль | Отправить PM | Цитировать


morres,

Цитата:
Глюк начинается на строке WinWait("SARC Intelligent Updater","OK") т.к. это окно просто не удается отловить, пробовал поразному, но моих познаний в AutoIt, видимо, недостаточно...
попробуй WinWaitActive("SARC Intelligent Updater","OK"
эта функция подождет пока окно будет активным))

еще есть 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
PPPS: есть приятная фича, Send ("{Enter}")
можешь в мой пример поставить вместо ControlClick
должно пахать

Отправлено: 21:30, 05-12-2008 | #1258


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить 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
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата amel27:
- ControlClick срабатывает не всегда (?), но можно поставить проверочный цикл: »
он не отрабатывает в основном, когда окно не успевает подгрузиться
тобишь, окно появилось, кнопка уже есть, но она не активна, скрипт по ней кликает и ничего не происходит. скрипт думает, что все прошло отлично)))
насчет условного цикла, это вроде как, самое рациональное решение))
Это сообщение посчитали полезным следующие участники:

Отправлено: 01:16, 07-12-2008 | #1260



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [Архив - Часть 3] AutoIt скрипты .:[общие вопросы]:.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[архив - Часть 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




 
Переход