2017-01-03 3 views
0

Мой сценарий как показано ниже:Как запустить Visual Studio ехе из пакетного файла

for %%i in (*.mudp) do echo %%i >> test.txt 
@ECHO OFF 
SETLOCAL 
:: remove variables starting $ 
FOR /F "delims==" %%i In ('set $ 2^>Nul') DO SET "%%i=" 

FOR /f "delims=" %%i IN (test.txt) DO SET $%%i=Y 
(FOR /F "delims=$=" %%i In ('set $ 2^>Nul') DO ECHO %%i)>test.txt 

for /f %%C in ('Find /V /C "" ^< test.txt') do set Count=%%C 
    echo The file has %Count% lines. 
@echo off 
cd "C:\Users\gbyraiah\pcap\createPcap\Debug" 
start createPcap.exe %Count% 
exit 

Я перечисляю все текстовые файлы с расширением .mudp в текущем каталоге на test.txt файл в Windows.

Затем подсчитывает количество файлов в списке и поэтому получаю Count значение 2, если 2 .mudp файлы найдены.

Тогда я хочу, чтобы открыть Visual Studio .exe, зацикливание .exe запустить его количество раз, равных Count, а также проходить подсчет в качестве аргумента командной строки к еху.

Итак, вот моя проблема: я не могу запустить .exe, и поэтому я не могу зацикливаться.

+0

Хорошо, мой вопрос: как запустить visual studio exe с целым параметром в качестве аргумента командной строки из командного файла. –

+0

EXE для визуальной студии - devenv. Таким образом, чтобы запустить визуальную студию, вы можете сделать «start devenv». Как вы это назвали? Что именно вы хотите сделать? Это не совсем понятно. –

+0

Спасибо за ваш ответ. Мой exe находится по следующему пути: - C: \ Users \ gbyraiah \ pcap \ createPcap \ Debug, поэтому я предположил, что должен написать следующий код, чтобы открыть exe @echo off cd "C: \ Users \ gbyraiah \ pcap \ createPcap \ Debug» старт createPcap.exe% Count% выхода –

ответ

0

Просто напишите yourExecutable.exe, чтобы начать его; напишите yourExecutable.exe 1, чтобы передать аргумент 1.

Чтобы сделать это в цикле, используя аргументы из 1 до значения %Count%, сделайте следующее:

for /L %%J in (1,1,%Count%) do yourExecutable.exe %%J 

start command не должно быть необходимым для запуска вашего .exe вообще. Обратите внимание, что start запускает .exe в новом процессе, поэтому пакетный скрипт не ждет завершения .exe, если вы не предоставите коммутатор /WAIT (например, start "" /WAIT yourExecutable.exe; "" - это название нового окна, которое может быть открыто, что должно всегда указываются во избежание проблем с цитированием путей).

Смежные вопросы