Показать полную графическую версию : как узнать, что программа установилась?
мне нужно автоматизировать установку нескольких программ посредством скрипта и не допустить их одновременной установки.
Т.е. вначале запускается установка одной программы, затем по завершении ее запускается установка другой программы и т.д.
Есть какие нибудь маркеры в реестре, которые позволяют понять, что установка завершена.
Или есть какие нибудь более простые способы решения?
мне нужно автоматизировать установку нескольких программ посредством скрипта …»
Какого скрипта? Их много: Windows Script Host, PowerShell, Python, AutoIt, AutoHotKey и несть числа прочим. Кое-кто сюда же относит и пакетные файлы. И в каждом из них есть достаточно простой способ для желаемого.
Iska,
PowerShell, CMD, JavaScrypt... - укажи любой вариант.
Пакетный файл:
start "" /wait "D:\Install\7-Zip\7-Zip 9.20\7z920.exe"
Windows Script Host (VBScript):
WScript.CreateObject("WScript.Shell").Run """D:\Install\7-Zip\7-Zip 9.20\7z920.exe""", 1, True
Windows Script Host (JScript):
(new ActiveXObject("WScript.Shell")).Run('"D:\\Install\\7-Zip\\7-Zip 9.20\\7z920.exe"', 1, true);
PowerShell:
Start-Process "D:\Install\7-Zip\7-Zip 9.20\7z920.exe" -Wait
Это не единственные способы.
Iska, к сожалению, предложенные варианты не спасают от установщиков, которые запускают дочерние процессы инсталляии и при этом закрывают основной процесс до завершения дочерних. :(
gora, конечно. Предложенный выше способ годится только для установщика, который «держит» дочерние процессы от начала и до конца инсталляции. В прочих случаях придётся рассматривать каждый конкретный из них отдельно.
установщиков, которые запускают дочерние процессы инсталляии и при этом закрывают основной процесс до завершения дочерних. »
А , как вариант - перепаковывать "под себя" эти программы ?
Хотя не факт , что со всеми можно такое сотворить... Увы..
предложенные варианты не спасают от установщиков, которые запускают дочерние процессы инсталляии и при этом закрывают основной процесс до завершения дочерних. »
Достаточно знать ВСЕ возникающие при установке процессы, что не сложно выявить, и контролировать завершение ВСЕХ этих процессов, после чего запускать установку очередного ПО. Механизм реализации не имеет значения.
Но т.к. polsok, ничего не конкретизировал (может у него и в помине нет "многопроцессного" ПО ), то можно советовать лишь общий алгоритм действий.
Можно ещё извратиться, запуская "видимую" автоустановку ПО (что возможно почти всегда) и контролировать сообщение окончания установки, типа "Установка завершена" и т.п. , и после закрытия оного, запускать установку следующей программы. Такие игрушки успешно реализуются в AutoIt и иже с ним...
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.