Автор Тема: Автоустановка QIP2005  (Прочитано 4456 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Kr0nd [?]

  • Новичок
  • *
  • Сообщений: 3
  • Репутация: 0
  • Пол: Мужской
    • Награды
Автоустановка QIP2005
« Создано: Июнь 18, 2013, 14:00:09 »
Вдохновленный примерами, создал скрипт автоустановки QIP2005, но вот незадача в определенный момент не срабатывает WinWait и установка залипает в самом интересном месте, пришлось поставить Sleep, дальше все прошло на ура.
Собственно вопрос к гуру AutoIt есть ли более изящный (правильный) способ побороть это?
Текст скрипта:
Код: AutoIt [Выделить]
; Установка QIP 2005
; Переменные
$sPathToProgam = "QIP2005\qip2005.exe"
$sMainWindowName = "Установка — QIP 2005"
; Код программы
;Установка программы
Run($sPathToProgam)
WinWait("Выберите язык установки", "Выберите язык, который будет использован в  процессе установки:")
ControlClick("[CLASS:TSelectLanguageForm;TITLE:Выберите язык установки]","","[CLASS:TNewButton; INSTANCE:1]")
$hWinQIP = WinGetHandle($sMainWindowName)
WinWait($hWinQIP, "Вас приветствует Мастер установки QIP 2005")
ControlClick($hWinQIP, "Вас приветствует Мастер установки QIP 2005", "[CLASS:TNewButton; INSTANCE:1]")
WinWait($hWinQIP, "Выбор папки установки")
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TRadioButton; INSTANCE:1]")
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,10)
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,32)
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TNewButton; INSTANCE:3]")
Sleep(5000)
WinWait($hWinQIP, "Принять участие")
ControlClick($hWinQIP, "Принять участие", "[CLASS:TCheckBox; INSTANCE:1]","Main",1,7,7)
ControlClick($hWinQIP, "Участвовать в исследовании посещаемости Интернета", "[CLASS:TNewButton; INSTANCE:3]")
WinWait($hWinQIP, "Завершение Мастера установки QIP 2005")
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TRadioButton; INSTANCE:1]")
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,10)
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,76)
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,98)
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewButton; INSTANCE:3]")
 

Тихую и автоустановку не пробовал, но вроде и ключей кроме /sp- /silent ничего нет.

Русское сообщество AutoIt

Автоустановка QIP2005
« Отправлен: Июнь 18, 2013, 14:00:09 »

Оффлайн chymax3m [?]

  • Новичок
  • *
  • Сообщений: 26
  • Репутация: 1
  • Пол: Мужской
    • Награды
Re: Автоустановка QIP2005
« Ответ #1, Отправлен: Июнь 18, 2013, 15:07:40 »
А смысл применять AutoIt, если есть ключи коммандной строки...
Хоть бы погуглили сперва чем мучатся?
http://wiki.qip.ru/Тихая_установка

Оффлайн Kr0nd [?]

  • Новичок
  • *
  • Сообщений: 3

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
Re: Автоустановка QIP2005
« Ответ #2, Отправлен: Июнь 18, 2013, 15:35:05 »
Погуглил)))
Эти ключи работают только на версиях начиная с qip unfium, у меня же qip2005.
Ну и любом случае хотелось бы уметь обходить такие проблемы.

Русское сообщество AutoIt

Re: Автоустановка QIP2005
« Ответ #2 Отправлен: Июнь 18, 2013, 15:35:05 »

Оффлайн chymax3m [?]

  • Новичок
  • *
  • Сообщений: 26
  • Репутация: 1
  • Пол: Мужской
    • Награды
Re: Автоустановка QIP2005
« Ответ #3, Отправлен: Июнь 21, 2013, 01:00:20 »
Только что скачал qip2005 v8097 и он упакован при помощи Inno Setup а значит поддерживает стандартние для Inno ключи тихой установки...
Цитировать
Ну и любом случае хотелось бы уметь обходить такие проблемы.
Ну, это дело хозяйское. Как по мне, так лучше пользоваться ключами установки, эсли это возможно, а уж потом искать другие пути решения.

Оффлайн Kr0nd [?]

  • Новичок
  • *
  • Сообщений: 3

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
Re: Автоустановка QIP2005
« Ответ #4, Отправлен: Июнь 21, 2013, 09:55:03 »
Видимо мы на разных языках разговариваем))
Меня смущает то, что qip втыкает по умолчанию свои сервисы и устанавливает поиск по умолчанию, эти параметры отключить с помощью ключей установки нельзя (или я не знаю как). Да Inno Setup поддерживает ключи установки, но они ограничены SILENT и /VERYSILENT, всё.
Устанавливать qip с параметрами по-умолчанию, а потом выковыривать из реестра все его "бонусы" желания совсем нет. Загвоздка не в том как устанавливать приложение, а почему не отрабатывает строка
Код: AutoIt [Выделить]
WinWait($hWinQIP, "Принять участие")
 

запущенная без предварительного Sleep.

Русское сообщество AutoIt

Re: Автоустановка QIP2005
« Ответ #4 Отправлен: Июнь 21, 2013, 09:55:03 »

Оффлайн Yuriy [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 737
  • Репутация: 281
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Автоустановка QIP2005
« Ответ #5, Отправлен: Июнь 21, 2013, 10:46:35 »
У меня так получилось  :)
Код: AutoIt [Выделить]
; Установка QIP 2005
; Переменные
$sPathToProgam = "QIP2005\qip2005.exe"
$sMainWindowName = "Установка — QIP 2005"
; Код программы
;Установка программы
Run($sPathToProgam)
WinWait("Выберите язык установки", "Выберите язык, который будет использован в  процессе установки:")
ControlClick("[CLASS:TSelectLanguageForm;TITLE:Выберите язык установки]","","[CLASS:TNewButton; INSTANCE:1]")
$hWinQIP = WinGetHandle($sMainWindowName)
WinWait($hWinQIP, "Вас приветствует Мастер установки QIP 2005")
ControlClick($hWinQIP, "Вас приветствует Мастер установки QIP 2005", "[CLASS:TNewButton; INSTANCE:1]")
WinWait($hWinQIP, "Выбор папки установки")
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TRadioButton; INSTANCE:1]")
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,10)
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,32)
ControlClick($hWinQIP, "Выбор папки установки", "[CLASS:TNewButton; INSTANCE:3]")

WinWaitActive($hWinQIP, "Принять участие") ;изменил
ControlClick($hWinQIP, "", "[CLASS:TCheckBox; INSTANCE:1]") ;изменил
ControlClick($hWinQIP, "", "[CLASS:TNewButton; INSTANCE:3]") ;изменил

WinWait($hWinQIP, "Завершение Мастера установки QIP 2005")
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TRadioButton; INSTANCE:1]")
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,10)
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,76)
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewCheckListBox; INSTANCE:1]","Main",1,10,98)
ControlClick($hWinQIP, "Завершение Мастера установки QIP 2005", "[CLASS:TNewButton; INSTANCE:3]")


Русское сообщество AutoIt

Re: Автоустановка QIP2005
« Ответ #5 Отправлен: Июнь 21, 2013, 10:46:35 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
9 Ответов
13139 Просмотров
Последний ответ Февраль 15, 2010, 23:16:38
от madmasles
2 Ответов
5348 Просмотров
Последний ответ Май 06, 2010, 14:27:32
от Guezt Gutsy
6 Ответов
6137 Просмотров
Последний ответ Июнь 18, 2010, 11:29:07
от krokus
4 Ответов
9044 Просмотров
Последний ответ Апрель 30, 2014, 14:18:02
от sngr
0 Ответов
1780 Просмотров
Последний ответ Март 01, 2012, 17:19:47
от madmasles
25 Ответов
9862 Просмотров
Последний ответ Январь 04, 2013, 10:34:33
от _Lexa98_
2 Ответов
2831 Просмотров
Последний ответ Январь 13, 2013, 09:44:27
от leto
13 Ответов
2792 Просмотров
Последний ответ Август 13, 2014, 16:35:28
от puz27
3 Ответов
8669 Просмотров
Последний ответ Ноябрь 03, 2014, 09:20:06
от snoitaleR