Ответ 1
Я думаю, что это работает:
start cmd.exe
Я занимаюсь настройкой CruiseControl.NET. Проблема, с которой я столкнулась, заключается в том, что я запускаю CC в качестве консольного приложения, и когда моя сборка завершается успешно и выполняется (с помощью exec), она запускает ее в командной строке CruiseControl DOS. Я просто использую простые командные файлы для запуска моего приложения, но при этом он запускается в том же приглашении, что и CC, заставляет CC думать, что сборка продолжается до тех пор, пока мое приложение запускается.
Есть ли параметры командной строки для cmd.exe
, которые будут порождать другое отдельное окно запроса?
Я думаю, что это работает:
start cmd.exe
start cmd.exe
открывается отдельное окно
start file.cmd
открывает командный файл и выполняет его в другой командной строке
вот код, который вам нужен;)
start cmd.exe @cmd /k "Command"
просто введите start в командной строке.
> start
это откроет новые окна.
START "notepad.exe"
echo Will launch the notepad.exe application
PAUSE
To make any cmd file type all you have to do is save the contents as .bat I.e.
@echo
TITLE example.bat
PAUSE
taskkill/IM cmd.exe
Make that into a "example.bat" file and save it open it and run.
Я также попытался выполнить командный файл, который запускает процесс/сервер daemon в конце задачи CCNET; Единственный способ заставить CruiseControl создать независимый асинхронный процесс БЕЗ ожидания завершения процесса:
использовать планировщик задач для запуска командного файла в качестве задачи CCNET (с помощью файла schtasks.exe)
schtasks.exe /create /F /SC once /ST 08:50 /TN TaskName /TR "c:/path/to/batchFileName.bat"
вам может потребоваться убить процесс в начале ccnet
PS: выбранный ответ с использованием "start cmd.exe" не работает; новое командное приглашение действительно порождено, но CCNET будет ждать завершения созданного cmd.
простая запись в файле летучей мыши
@cmd
или
@cmd /k "command1&command2"