Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Помогите составить тихую установку программы Unlocker (http://forum.oszone.net/showthread.php?t=243599)

denfs 29-09-2012 01:25 1996451

Помогите составить тихую установку программы Unlocker
 
Вот собственно впервые пытаюсь составить скрипт для авто установки программы:
Код:

Run("Unlocker1.9.1-x32.exe")
$WinTitle = "Installer Language"
WinWaitActive($WinTitle, "Please select a language.")
WinActivate($WinTitle, "Please select a language.")
ControlClick($WinTitle, "", "Button1")

При выполнении всего скрипта здесь появляется окно "Вас приветствует мастер установки Unlocker 1.9.1" и autoit ничего не делает.

WinWait($WinTitle "Вас приветствует мастер установки Unlocker 1.9.1")
WinActive($WinTitle, "Вас приветствует мастер установки Unlocker 1.9.1")
ControlClick($WinTitle, "", "Button2")
WinWaitActive($WinTitle, "Лицензионное соглашение")
WinActivate($WinTitle, "Лицензионное соглашение")
ControlClick($WinTitle, "", "Button2")
WinWaitActive($WinTitle, "Try the Babylon Bar today!")
WinActivate($WinTitle, "Try the Babylon Bar today!")
ControlClick($WinTitle "", "Button4")
ControlClick($WinTitle, "", "Button2")
WinWaitActive($WinTitle, "Выбор папки установки")
WinActivate($WinTitle, "Выбор папки установки")
ControlClick($WinTitle, "", "Button2")

Версия AutoIt: 3.3.8.1.
А какой параметр следит за появлением нового окна?
*

AZJIO 29-09-2012 10:40 1996502

Цитата:

Цитата denfs
А какой параметр следит за появлением нового окна? »

WinWait ожидает появление окна и возвращает дескриптор, который далее используется вместо $WinTitle. В справке есть пример.

denfs 29-09-2012 12:11 1996521

Вложений: 1
Цитата:

Цитата AZJIO
WinWait ожидает появление окна и возвращает дескриптор, который далее используется вместо $WinTitle. В справке есть пример. »

Спасибо за ответ, додумался создать новую переменною типа "WinTitle1" и после этого скрипт начал нормально работать.

Получилось примерно так:

Код:

Run("Unlocker1.9.1-x32.exe")
$WinTitle = "Installer Language"
WinWaitActive($WinTitle, "Please select a language.")
WinActivate($WinTitle, "Please select a language.")
ControlClick($WinTitle, "", "Button1")
$WinTitle1 = "Установка Unlocker 1.9.1"
WinWaitActive($WinTitle1,"Вас приветствует мастер установки Unlocker 1.9.1")
WinActive($WinTitle1, "Вас приветствует мастер установки Unlocker 1.9.1")
ControlClick($WinTitle1, "", "Button2")
WinWaitActive($WinTitle1, "Лицензионное соглашение")
WinActivate($WinTitle1, "Лицензионное соглашение")
ControlClick($WinTitle1, "", "Button2")
WinWaitActive($WinTitle1, "Try the Babylon Bar today!")
WinActivate($WinTitle1, "Try the Babylon Bar today!")
ControlClick($WinTitle1, "", "Button4")
Sleep(400)
ControlClick($WinTitle1, "", "Button2")
WinWaitActive($WinTitle1, "Выбор папки установки")
WinActivate($WinTitle1, "Выбор папки установки")
ControlClick($WinTitle1, "", "Button2")

Помимо этого столкнулся с таким траблом, утилита AutoIt Window Info Tool не захотел определять идентификатор галочек, для того чтобы убрать: Проверить наличие обновлений и Ассистент.
См. на скрине.

Creat0R 29-09-2012 17:38 1996632

denfs
1. Укажите в названии темы имя программы.
2. Код нужно обрамлять тегом code.

denfs 11-10-2012 13:05 2003379

Цитата:

Цитата Creat0R
1. Укажите в названии темы имя программы.
2. Код нужно обрамлять тегом code. »

Исправил.

beve 12-10-2012 01:47 2003890

Здравствуйте. Как бы кто не любил Autoit, но в процессе установки любой программы всегда лучше по возможности обойтись без подобного WinActivate(), ControlClick() и тому подобных команд, тем более при установки такой программы как unlocker, так как все что делает готовый установщик, это копирует файлы в директорию Program Files, создает запись в реестре на удаление програмы (появиться в аплетте Установка и удаление программ) и регистрирует "свою dll-ку".

Рекомендую вам скачать тут Unlocker v1.9.1. Дальше (если не понимаете, где в аддоне искать файл), то распакуйте архив и файл Unlocker.exe будет по пути: Имя распакованного архива\Files\ForceCopy\SVCPACK\Unlocker.exe
Для тихой, автоматической установки запускайте так: Unlocker.exe -y -fm0
Программа установиться, как надо и нигде не будет не нужных ярлыков. Такую же сборку программ похожих на unlocker при желании вы можете сделать и самостоятельно с помощью 7z архиватора (для удобства большинство из нас пользуются связкой total comander + кнопка для работы с 7z SFX архивами, что очень не трудно и обойтись без "кликанья" autoit-ом.

denfs 12-10-2012 12:01 2004028

Цитата:

Цитата beve
Здравствуйте. Как бы кто не любил Autoit, но в процессе установки любой программы всегда лучше по возможности обойтись без подобного WinActivate(), ControlClick() и тому подобных команд, тем более при установки такой программы как unlocker, так как все что делает готовый установщик, это копирует файлы в директорию Program Files, создает запись в реестре на удаление програмы (появиться в аплетте Установка и удаление программ) и регистрирует "свою dll-ку".
Рекомендую вам скачать тут Unlocker v1.9.1. Дальше (если не понимаете, где в аддоне искать файл), то распакуйте архив и файл Unlocker.exe будет по пути: Имя распакованного архива\Files\ForceCopy\SVCPACK\Unlocker.exe
Для тихой, автоматической установки запускайте так: Unlocker.exe -y -fm0
Программа установиться, как надо и нигде не будет не нужных ярлыков. Такую же сборку программ похожих на unlocker при желании вы можете сделать и самостоятельно с помощью 7z архиватора (для удобства большинство из нас пользуются связкой total comander + кнопка для работы с 7z SFX архивами, что очень не трудно и обойтись без "кликанья" autoit-ом. »

1)За основу может идти и любая другая программа (не только Unlocker).
2)И я не писал: Как создавать Portable программы.

perepelica 15-10-2012 21:35 2006075

Прошу помочь сделать файл "setup iss" для тихой установки. Делал все, как прописано - через "выполнить" > setup.exe /r (пробовал /s) - а в папке windows "setup iss" пустой - ничего не записалось, ничего не изменилось. Пробовал cmd - результат тот-же - программа установилась, а "setup.iss" пустой. Подскажите - что делать в данной ситуации?

denfs 19-10-2012 10:47 2008394

Цитата:

Цитата perepelica
Прошу помочь сделать файл "setup iss" для тихой установки. Делал все, как прописано - через "выполнить" > setup.exe /r (пробовал /s) - а в папке windows "setup iss" пустой - ничего не записалось, ничего не изменилось. Пробовал cmd - результат тот-же - программа установилась, а "setup.iss" пустой. Подскажите - что делать в данной ситуации? »

Тебе туда!

meateron 21-10-2012 23:49 2009866

/S же работает.


Время: 19:57.

Время: 19:57.
© OSzone.net 2001-