9

我刚开始学习如何构建批处理文件。(在 windows 7 环境下)

我想构建能够按顺序运行 .exe 文件的批处理文件。

按顺序运行批处理文件

我试图应用上述想法,但我不确定如何应用它

比如D:/上有三个文件

在“D:/”中有三个 .exe 文件。

  1. 我的驱动程序
  2. YouDriver.exe
  3. 我的软件.exe

我想构建批处理文件,它依次运行三个 exe 文件

可能的情况是..

  1. 运行批处理文件
  2. 运行 MyDriver.exe
  3. 弹出 MyDriver 文件的安装 GUI,然后用户开始安装 MyDriver
  4. 完成 MyDriver.exe
  5. 运行 YouDriver.exe
  6. YouDirver 文件的安装 GUI 弹出,然后用户开始安装 YouDriver
  7. 用 YouDriver.exe 完成
  8. 运行我的软件.exe
  9. 弹出MySoftware安装界面,然后用户开始安装MySoftware
  10. 完成退出批处理文件。

我不确定批处理文件是否可以做到...

如果不可能,还有其他选择吗?

谢谢

4

4 回答 4

10

你实际上不需要做任何特别的事情来实现这一点。批处理文件默认是同步的,因此批处理文件的执行将在可执行文件启动时暂停,并在它退出时恢复。像这样简单的事情应该这样做:

@echo off
REM "@echo off" prevents each line from being printed before execution,
REM and is optional
REM "REM" introduces a comment line
D:\MyDriver.exe
D:\YouDriver.exe
D:\MySoftware.exe

当然,如果您有兴趣检查程序的返回值,看看它们是安装成功还是失败(假设安装程序提供了该信息),那么事情会变得稍微复杂一些;如果这是您需要的,请在评论中提及,我会相应地扩展我的答案。

于 2013-11-14T02:23:28.823 回答
8

这将启动每个文件并等待它完成,然后启动下一个文件。

@echo off
start "" /w /b "d:\MyDriver.exe"
start "" /w /b "d:\YouDriver.exe"
start "" /w /b "d:\Mysoftware.exe"
于 2013-11-14T06:20:42.233 回答
4
start MyDriver.exe
start YouDriver.exe
start MySoftware.exe

If you want the batch file in a different dir you would have to do:

cd D:\
start MyDriver.exe
start YouDriver.exe
start MySoftware.exe

If you want a more flexible system:

echo Welcome to EXE starter!
set /p dir = DIR:
set /p exe = EXE1:
set /p exe1 = EXE2:
set /p exe 2 = EXE3:
cd DIR
start exe
start exe1
start exe2

There you go!

To do it squentially:

call YouDriver.exe
call MeDriver.exe
call Mysoftware.exe

call will halt the batch file until program has closed.

于 2013-11-14T03:18:39.913 回答
0

尝试将其放在要运行的文件的同一目录中。如果不能,请使用 cd C:\Directory\Name 将其更改为 MyDriver.exe 文件所在的目录。然后只需执行 MyDriver.exe - 您不需要调用或启动语句。

MyDriver.exe
YouDriver.exe
MySoftware.exe

如果需要,请在开始时使用 cd。

于 2013-11-14T02:25:34.047 回答