首页 > 解决方案 > 如何在 Windows 批处理脚本中加载多个程序?

问题描述

我正在尝试创建一个批处理文件来加载多个窗口程序,更具体地说,是控制外围飞行硬件的应用程序。

我似乎无法弄清楚如何连续打开所有应用程序。我尝试了很多方法,包括运行可执行应用程序:

@echo off
cd "D:\Controls\" & start "D:\HW_Controls\Control1.exe" &
cd "D:\Controls\" & start "D:\HW_Controls\Control2.exe" &
cd "D:\Controls\" & start "D:\HW_Controls\Control3.exe"

那一次只能运行一个应用程序,直到我退出该应用程序,这是我不想要的。我希望它们连续打开。因此,我从一篇旧文章中阅读了 StackOverflow 上的某处,尝试将每个应用程序作为自己的批处理文件运行,如下所示:

@echo off
start "D:\Controls1.bat" &
start "D:\Controls2.bat" &
start "D:\Controls3.bat"

其中每个批处理文件看起来与此类似:

cd "D:\Controls\" & start "D:\HW_Controls\Control{1..3}.exe"

我也尝试过使用 chdir:

chdir "D:\Controls\" & start "D:\HW_Controls\Control{1..3}.exe"

当我尝试在其中加载批处理文件时,它似乎不会更改目录,并且加载只会打开初始批处理文件所在的命令提示符,在本例中为桌面目录。

我知道有一些选项可以在 Windows 启动时打开它们,但这不是我想要的。我想在需要使用应用程序时加载它们。

奖励积分:如果有人可以告诉我如何在批处理脚本中退出所有应用程序,以及当我完成它们时。

标签: windowsbatch-file

解决方案


这是一次启动多个程序的一种方法:

@For %%A in ("notepad.exe" "chrome.exe" "calc.exe") do start "" %%~A

推荐阅读