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

Показать сообщение отдельно

Ветеран


Contributor


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

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


Оформил старый батник как процедуру и вызываем её сколько нужно раз с временнЫми задержками с нужным списком параметров, можно с разным в следующих вызовах. В частности, можно и с одним "BufferSize=траляля"
Код: Выделить весь код
@Echo Off

Set "cfgIn0=Box_In\nullDC.cfg"

Call :Main "BufferSize=2048" "Dreamcast.Region=333" "Dreamcast.Broadcast=444" "Dreamcast.RTC=5552127595098"

Timeout /T 5 >nul
rem ping -n 5 127.0.0.1>nul

Call :Main "BufferSize=4096" "Dreamcast.Region=aaa333" "Dreamcast.Broadcast=aaa444" "Dreamcast.RTC=aaa5552127595098"

GoTo :Eof

:Main
Set Rep=%*

Set "cfgIn=%~dp0"
FOR /F "usebackq delims=" %%j IN ('%cfgIn:~0,-1%') DO Set "cfgIn=%%~dpj%cfgIn0%"

If Not Exist "%cfgIn%" (
	Echo:
	Echo ????? File %cfgIn% not found !!!!!
	Echo:
	Exit /B 1
)
.....................................
.....................................
Таймаут организован утилитой Timeout (начиная, по крайней мере, с Win 7, она присутствует в системе. В противном случае таймаут можно организовать через Ping (в моём примере он закомментирован)
Если не хотите видеть аварийное сообщение (а это плохо, батник не работает, а в чём дело, не понятно) лучше не полностью убрать If, а сделать
Код: Выделить весь код
If Not Exist "%cfgIn%" Exit /B 1
, чтобы сохранилась хотя бы предсказуемость работы скрипта

Моё Величие в познаниях BAT весьма скромное

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:22, 07-06-2018 | #19