Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Инсталляция программы

Ответить
Настройки темы
CMD/BAT - [решено] Инсталляция программы

Старожил


Сообщения: 485
Благодарности: 1


Конфигурация

Профиль | Отправить PM | Цитировать


Есть папка с 3-мя файлами
1.exe
2.cfg
3.txt

Нужен bat файл, который запустит 1.ехе проинсталлирует программу, затем скопирует в созданную после инсталляции директорию файлы 2 и 3.

Отправлено: 14:22, 20-01-2016

 

Ветеран


Сообщения: 881
Благодарности: 330

Профиль | Отправить PM | Цитировать


Если "1.exe" инсталлируется самостоятельно, без вмешательства (и процесс завершается) и известен путь и папка, которую он создает, можно так:
Код: Выделить весь код
@echo on
set "in=papka_in"
set "out=papka_out"
set "p=1.exe"
start "" "%in%\1.exe"
cmd /c for /l %%i in () do for /f delims^^=^^" %%j in ('tasklist /fi "imagename eq %p%" /fo csv /nh') do if not "%%j"=="%p%" (if exist "%out%" (copy /y "%in%\2.cfg" "%out%" & copy /y "%in%\3.txt" "%out%")) & exit
.

Отправлено: 20:06, 20-01-2016 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 881
Благодарности: 330

Профиль | Отправить PM | Цитировать


Или так, при тех же условиях выше:
Код: Выделить весь код
@echo on
set "in=papka_in"
set "out=papka_out"
start /b /wait "" "%in%\1.exe"
if exist "%out%" (copy /y "%in%\2.cfg" "%out%" & copy /y "%in%\3.txt" "%out%")
exit
.

Отправлено: 20:32, 20-01-2016 | #3


Ветеран


Contributor


Сообщения: 24582
Благодарности: 7149

Профиль | Отправить PM | Цитировать


Цитата alpap:
Или так, »
Не «или» а только так. Со «start» и без «/wait» не будет никакого «после инсталляции», а именно что «сразу».
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:23, 20-01-2016 | #4


Ветеран


Сообщения: 881
Благодарности: 330

Профиль | Отправить PM | Цитировать


Цитата alpap:
for /l %%i in () do »
с этим будет, тем более я проверял перед тем как выложить.
Да, инсталляция пройдет, папка будет создана и как только процесс пропадет, скопируются файлы (с заменой, если такие будут), чем по ТЗ не так.

Последний раз редактировалось alpap, 21-01-2016 в 09:54.


Отправлено: 09:47, 21-01-2016 | #5


Аватара для gora

Ушёл из жизни


Contributor


Сообщения: 6042
Благодарности: 3487

Профиль | Отправить PM | Цитировать


Цитата Iska:
Не «или» а только так. »
Полностью согласен, но замечу, что даже наличие /wait не решает проблему на 100%.
Например, если 1.exe запустит родительский процесс, который распаковывает основной установщик во временную папку, а затем завершает процесс 1.exe и запускает дочерний процесс собственно установщика. В этом случае копирование может произойти в эту временную щель между двумя процессами и нужная для копирования папка еще не будет создана.
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:37, 21-01-2016 | #6


Ветеран


Сообщения: 881
Благодарности: 330

Профиль | Отправить PM | Цитировать


Цитата gora:
не решает проблему на 100% »
, можно еще кучу подводных камней найти, просто проводить инсталляцию как минимум с помощью cmd - по-моему перебор (и софта хватает по этой части вплоть до полного автомата)

Отправлено: 17:36, 21-01-2016 | #7


Ветеран


Contributor


Сообщения: 24582
Благодарности: 7149

Профиль | Отправить PM | Цитировать


Цитата gora:
но замечу, что даже наличие /wait не решает проблему на 100%.
Например, если 1.exe запустит родительский процесс, который распаковывает основной установщик во временную папку, а затем завершает процесс 1.exe и запускает дочерний процесс собственно установщика. В этом случае копирование может произойти в эту временную щель между двумя процессами и нужная для копирования папка еще не будет создана. »
Именно так .

Отправлено: 23:34, 21-01-2016 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Инсталляция программы

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
FreeBSD - Инсталляция X Window System ? Zorgan Общий по FreeBSD 2 31-01-2013 16:11
Инсталляция Red Hat albich Железо в Linux 7 15-12-2009 13:12
инсталляция беспроводной мыши igiron Хочу все знать 7 25-03-2008 14:42
удаленная программная инсталляция Kelasant Программирование и базы данных 10 21-02-2005 09:45
Инсталляция W2K Server Guest Microsoft Windows NT/2000/2003 7 28-08-2003 09:53




 
Переход