手动关闭一个程序后自动杀死两个进程

时间:2016-10-20 08:32:00

标签: windows batch-file

我有一个启动两个程序的批处理文件:

@echo off
start "" "C:\Program Files (x86)\Kodi\Kodi.exe"
start "" "C:\Program Files\OpenVPN\bin\openvpn-gui.lnk"

现在当我关闭程序"Kodi"时,我希望首先自动关闭任务"openvpn-gui.exe"然后"openvpn.exe"

谢谢!

2 个答案:

答案 0 :(得分:1)

这个怎么样:

start "" "C:\Program Files\OpenVPN\bin\openvpn-gui.exe"
start "" "C:\Program Files\OpenVPN\bin\openvpn.exe"
start "" /WAIT "C:\Program Files (x86)\Kodi\Kodi.exe"
taskkill /IM "openvpn.exe"
taskkill /IM "openvpn-gui.exe"

答案 1 :(得分:0)

未经测试,但请试一试:

@echo off
Title Killing two process automatically after closing one program manually
set "RunningProcess=Kodi.exe"
set "Process2Kill=openvpn-gui.exe openvpn.exe"
tasklist /fi "imagename eq %RunningProcess%" /nh |find /i /c "%RunningProcess%"|findstr "^1$" >nul 
If "%Errorlevel%" EQU "1" (
    For %%a in (%Process2Kill%) do Call :KillProcess "%%a"
) else (
    echo %RunningProcess% is still running 
)
pause & exit

:KillProcess
Taskkill /f /im "%~1">nul 2>&1
goto :eof