如何写“如果这个程序没有运行......那么......执行这个命令”BAT?

时间:2013-07-25 02:55:19

标签: batch-file execute

好的,所以我对批处理文件一无所知,而且我正在做一些事情。它是一个非常小的批处理文件,它执行两个程序,我想要它做的是执行另一个程序(或命令),如果这些程序不再运行。如何在批处理文件中指定“如果该程序没有运行...则执行此命令”???

PS:我知道这是基本的,但我几乎什么都不知道......

以下是我需要变成合适的批次:

START "%CD%\Chaoslauncher.exe"

如果“Chaoslauncher.exe”已关闭且Starcraft.exe未运行,则END BATCH

如果“Starcraft.exe”正在运行执行:

"%CD%\dc64.exe" -width=800 -height=600 -depth=32 -refresh=60

当Starcraft.exe关闭且“Chaoslauncher.exe”正在运行时 关闭“Chaoslauncher.exe”并执行:

"%CD%\dc64.exe" -width=1600 -height=900 -depth=32 -refresh=60

AND END BATCH

如果“Starcraft.exe”运行结束时“Chaoslauncher.exe”未运行“Starcraft.exe” 执行命令:

"%CD%\dc64.exe" -width=1600 -height=900 -depth=32 -refresh=60

然后结束批次

同时始终隐藏CMD窗口。

1 个答案:

答案 0 :(得分:0)

@ECHO OFF
SETLOCAL
"%CD%\dc64.exe" -width=800 -height=600 -density=32 -refresh=60
"%CD%\Chaoslauncher.exe"
TASKLIST /v|FIND /i " "Chaoslauncher.exe" >nul
IF ERRORLEVEL 1 GOTO launch
TASKLIST /v|FIND /i " "Starcraft.exe" >nul
IF NOT ERRORLEVEL 1 GOTO :eof
:launch
"%CD%\dc64.exe" -width=1600 -height=900 -density=32 -refresh=60
GOTO :EOF

这应该实现你的目标。