Войти

Показать полную графическую версию : [решено] Бесконечное выполнение скрипта


Alkantel
12-08-2013, 19:47
Собственно проблема, скомпилированный exe-файл не прекращает выполнение по завершении всех задач.
Вот сам код
run('SetupCloneCD.exe /S')
WinWaitActive('CloneDVD2 Setup','Your computer needs to be restarted. Reboot now?')
ControlClick('CloneDVD2 Setup','Your computer needs to be restarted. Reboot now?','&&Нет')
Сам код компилируется без проблем. Добавлял в конец команды Exit, WEnd, EndFunc (при двух последних возникала ошибка, что логично, и скрипт завершался).
Пробовал добавить вызов батника, который бы убивал процесс скрипта, такой строчкой
run('CloneCD.bat')
но батник не вызывается (может я не правильно вызываю его, первый раз все-таки). Такое чувство что после последней строчки вообще ничего не происходит.
Сам скрипт взят здесь на форуме. Версия AutiIt 3.3.8.1. ОС Windows 7 x32 (если это имеет значение).

Iska
13-08-2013, 05:00
Alkantel, почему бы просто не предположить (а можно и просто проверить), что скрипт останавливается на «WinWaitActive()» и ждёт?

Alkantel
13-08-2013, 08:07
Iska, убрать строку их кода? Или есть другой способ. Я еще совсем зеленый в вопросах AutiIt.

Дело в том что «WinWaitActive()» ждет появление окна которое появляется по окончании установки программы - запрос на перезагрузку компа (думаю Вы и так догадались =) ). И судя по тому что его нет, строка «ControlClick()» выполняет свою работу. А дальше хоть кошка не ходи. Но за совет спасибо. Вечером проверю.

Iska
13-08-2013, 08:15
Например, добавьте:
MsgBox(0, "Bla-bla-bla", "Bla-bla-bla")
после «WinWaitActive». Если Вы не увидите этого сообщения — значит, до этой инструкции очередь исполнения так и не дошла. Тогда разбирайтесь, было ли запущено «SetupCloneCD.exe», называется ли появляющееся (и появляющееся ли?) окно «CloneDVD2 Setup», и содержит ли оно текст «Your computer needs to be restarted. Reboot now?».

Alkantel
13-08-2013, 09:45
Спасибо за идею. Обєтом неподумал. «SetupCloneCD.exe» запускается, по умолчанию окно с запросом на перезагрузку появляется. Вобщем спасибо за подсказку. Вечером попробую и отпишусь.

Iska
13-08-2013, 10:49
Alkantel, тогда берите в руки «Au3Info.exe» и смотрите, какие на самом деле появляющееся окно имеет заголовок и текст окна. Возможно, версия поменялась, и вместе с ней изменились заголовок и/или текст появляющегося окна.

Alkantel
14-08-2013, 00:01
Iska, у окна было неправильное имя. Кроме того, я пробовал на машине где эта программа уже установлена и окно не выводилось. Спасибо за наводку, копаю дальше.

UPD Проблема решилась довольно неожиданно: заменил ' на " и добавил прбелы после запятых. Видать компилятору нужны были пробелы =)
Вобщем спасибо тебе добрый человек :)




© OSzone.net 2001-2012