wolf0425 спасибо я посмотрю синтаксис: пути отработки скрипта
но при беглом взгляде, если я правильно детерминировал, в коде походу рекурсия, а у меня - эта задача, которую сейчас решаем сама часть процедуры в большом (со многими аргументами, функциями и ветвлениями по subroutines) master-script'e и поэтому я стараюсь максимально возможно редуцировать код, а то излишняя вычурность потом, в будущем аукнется ошибками
Добавлено: wolf0425 Цитата: set error
это удаление переменной?? я что-то не пойму эту стринг
может set error= ?
Добавлено: wolf0425 вроде что-то не так (ладно, если окромя рекурсии не найду решения, тогда - впоследствие - сам отлажу код)
вот листинг запуска в комстроке (файла r.bat):
W:\>r
W:\>if . NEQ ._kill goto :start
W:\>setlocal enabledelayedexpansion
W:\>for /F "tokens=*" %A in ('"W:\R.bat" _kill') do set "error=!error!%A"
W:\>set "error=!error!W:\>if ._kill NEQ ._kill goto :start "
W:\>set "error=!error!W:\>taskkill /f /im proc.exe 2>&1 "
W:\>set "error=!error!Ошибка: Не удается найти процесс "proc.exe"."
W:\>set "error=!error!W:\>echo ErrorLevel=128 "
W:\>set "error=!error!ErrorLevel=128"
W:\>set "error=!error!W:\>goto :eof "
W:\>set error
error=W:\>if ._kill NEQ ._kill goto :start W:\>taskkill /f /im proc.exe 2>&1 Ошибка: Не удается найти процесс "proc.exe".W:\>echo ErrorLevel=128
ErrorLevel=128W:\>goto :eof
W:\>
p.s.
ладно, походу, эта задача решается только через рекурсивный вызов батником самого себя, а без рекурсии - только через процедуры внутри тела батника - никак
01MDM yurkesha wolf0425 спасибо за помощь