Как запустить несколько программ, используя командный файл - PullRequest
12 голосов
/ 04 апреля 2011

Мне нравится запускать две программы, используя пакетный файл, но условие состоит в том, что вторая программа должна запускаться только после загрузки первой программы, поэтому есть ли способ управления с помощью таймера для контроля, когда программа запускается.

Ответы [ 4 ]

13 голосов
/ 21 февраля 2014

Мне нужно было то же самое, и я обнаружил, что следующая вещь работает, как и ожидалось:

start D:\Michal\Xming\Xming.exe -multiwindow
start D:\Michal\Xming\putty.exe
start D:\Michal\WinSCP\WinSCP.exe

И все это сохраняется в файле Login.bat.

Кстати, я бегуWin7, но я сомневаюсь, что это имеет какое-либо влияние.

12 голосов
/ 04 апреля 2011

В принципе, вы можете попробовать этот подход (не тестировался):

  1. Запустите первую программу с помощью команды start.

  2. Проверьте список задач в цикле, чтобы увидеть, появилась ли там программа.

  3. Установить ограничение по времени для указанного цикла.

  4. В случае успеха запустить следующую программу, в противном случае выйти с уведомлением.

Сценарии могут выглядеть следующим образом:

@ECHO OFF
START program1.exe
FOR /L %%i IN (1,1,100) DO (
  (TASKLIST | FIND /I "program.exe") && GOTO :startnext

  :: you might add here some <a href="/116960/spat-v-paketnom-faile">delaying</a>
)
ECHO Timeout waiting for program1.exe to start
GOTO :EOF

:startnext
program2.exe
:: or START program2.exe

Имейте в виду, что время не точное, особенно если вы собираетесь вставить задержки между проверками списка задач.

8 голосов
/ 22 февраля 2013

Я думаю, что здесь это может быть неуместно, но хотелось бы поделиться следующим:

Я создал следующий пакетный файл и запускаю его всякий раз, когда открываю свой ноутбук в офисе, чтобы одним щелчком открыть соответствующие программы,Хранил этот файл на рабочем столе и создал папку, куда я положил все ярлыки для соответствующих программ.Итак, я запускаю эти ярлыки в командном файле следующим образом:

@ECHO off

start C:\Users\User1\Desktop\Softwares\IE
start C:\Users\User1\Desktop\Softwares\Googletalk
start C:\Users\User1\Desktop\Softwares\YahooMessenger
start C:\Users\User1\Desktop\Softwares\Program4
start C:\Users\User1\Desktop\Softwares\Program5
3 голосов
/ 04 апреля 2011

Я также нашел небольшой хак для этого, просто используя команду ping с ключом -n следующим образом:

start /d "C:\Program Files (x86)\Mobile Partner\" MobilePartner.exe
ping 127.0.0.1 -n 8
start /d "F:\Other Applcations\System Tools\OS Tweak\" dragfullwindows.exe
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...