Выполнение следующей команды, после завершения определенного процесса
Нужно сделать скрипт для автоматической установки Oracle 11g. Найден мануал, в котором описано что и за чем делать.
Запустить setup с ключами, запустить .bat из директории, куда установится Oracle(он появится только после установки), и скопировать файл в определенную директорию. Всё бы ничего. Скрипт простейший на первый взгляд. Простое постепенное выполнение команд. Однако, после запуска setup.exe, он запускает процесс java.exe, а сам исчезает. Процесс java.exe и занимается установкой программы. НО cmd считает, что после исчезновения из списка процессов процесса setup.exe - программа установилась, и продолжает по списку выполнять команды, т.е. пытается найти .bat и запустить его, естественно его не находит, потому что программа еще только устанавливается. Подскажите, пожалуйста, как сделать, чтобы вторая команда (запуск .bat) происходила после завершения процесса установки(когда отработает не setup.exe, a java.exe). Заранее благодарю за любые подсказки и наводки. |
Можно так:
Код:
start /wait "" jawa.exe Код:
start /wait "" jawa.exe |
SendMessage, не тот случай, т.к. java.exe запускается не батником
Weterok, отследить активность процесса вкупе со всеми дочерними нетривиальная задача, т.к. это можно реализовать только средствами самой запускающей утилиты, но START и подобные не имеют такой функциональности... однажды приходилось решать подобное в AutoIT - это проще, чем писать свой StartWait.Exe, если есть интерес линк на ветку форума штатными средствами - ожидание завершения процесса, но это не панацея, т.к. java.exe может быть запущен и другими программами Код:
start /wait "" setup.exe Код:
start /wait "" setup.exe |
amel27,
делается для установки на чистый компьютер, где java.exe других не должно быть. Как вариант на первое время - очень даже. Работает, и это главное. Спасибо огромное за совет и за ссылку! начну копание вглубь этой проблемы с нее. |
Цитата:
статья: Пауза в пакетном файле |
Опять-таки, устанавливаться это счастье будет через WDS естественно по сети, поэтому косяка быть не должно. Я только что проверила - работает. Спасибо еще раз !
|
Задача такая. Происходит установка программы, по завершении установки программа "Prog" запускается, но как таковое приложение "Установка" ещё висит в памяти, и установка завершается, когда только закроешь окно запустившейся проги "Prog".
Хотелось бы, чтобы окно программы закрывалось автоматом скриптом, но так как по сути процесс "Установка" ещё запущен, когда это окно открывается, скрипт такого рода не срабатывает: Код:
START "" /WAIT "Установка" |
Как-то так:
Код:
start "" "setup.exe" |
Iska, спасибо, работает.
|
Цитата:
Цитата:
|
Цитата:
Код:
>nul ping.exe -n 6 127.0.0.1 |
Почему-то данная конструкция не срабатывает вкупе с nircmd.exe, возврата на :Repeat не происходит:
Код:
start "" /b "%ProgramFiles%\Opera\opera.exe" |
Цитата:
Я не видел в Opera окна «Добро пожаловать». Опишите, какую версию Вы использовали. |
|
BigBoo, закрытие этого окна вызовет отмену запуска «Opera». Вам именно это надо?
E:\Песочница\0132\Script.ncl: Код:
exec show "~$folder.programfiles$\Opera\opera.exe" Код:
nircmdc.exe script "E:\Песочница\0132\Script.ncl" |
Вопрос такой: Устанавливается программа
Код:
start "" /wait "WebcamMax-7.7.2.2.MultiLanguage.Setup.exe" /S Код:
nircmd.exe win dlgclick "Безопасность Windows" ok |
Подскажите плиз.
Использую закрытие процесса перед запуском установки: Код:
:Repeat Или по другому - команда завершения процесса выполнялась, только если он запущен. |
Код:
:Repeat |
Georgio, так не выполняется следующая команда запуска установки.
Зависает с открытой ком строкой. |
Спасибо всем!!!
Получилось так: Код:
@echo off |
Теперь другой вопрос:
Нужно запустить Uninstall.exe, если этот файл есть в наличии, если нет - выполнить следующую команду. |
Цитата:
|
Цитата:
|
Iska, понятно.
В общем другими словами - батник нужно запускать с правами админа. Что же, придётся *.exe делать из батника, раз пошла такая пьянка. Спасибо! |
Время: 03:04. |
Время: 03:04.
© OSzone.net 2001-