Вы можете использовать перенаправление команд с &&
или &
чтобы выполнить исходящую команду после завершения первой команды. Вы можете настроить его на выполнение исходящей команды после того, как первая команда была успешной, или сразу после того, как первая команда будет выполнена независимо от результата первой команды.
Хитрость заключается в том, чтобы пакетный сценарий поместил функцию VB msgBox и соответствующие значения, которые он использует, во временный сценарий, который впоследствии будет выполнен через wscript.
Все это должно работать "из коробки" без установки каких-либо сторонних инструментов, так что это Windows родной.
Пакетный скрипт
Примечание. Вам нужно будет использовать синтаксис SET x=msgbox "%TITLE%",0,"%MESSAGE%"
а не то, что у вас есть, чтобы это работало, но это только незначительная корректировка.
@ECHO ON
:Routine1
SET TARGETPATH=C:\Path\Folder
SET COMMAND=rmdir "%TARGETPATH%
SET TITLE=This is my message title
SET MESSAGE=This is my message body
SET tmpmsgbox=%temp%\~tmpmsgbox.vbs
SET x=msgbox "%MESSAGE%",0,"%TITLE%"
ECHO %x%>"%tmpmsgbox%"
%COMMAND% && WSCRIPT "%tmpmsgbox%"
EXIT
Перенаправление
commandA & commandB Run commandA and then run commandB
commandA && commandB Run commandA, if it succeeds then run commandB
Дополнительные ресурсы