同时启动 2 个文件,当其中一个文件关闭时,也关闭其中一个文件

同时启动 2 个文件,当其中一个文件关闭时,也关闭其中一个文件

我需要编写代码来使批处理文件同时启动 2 个程序,并且当一个程序关闭时,另一个程序也会关闭。例如:

start program 1
start program 2 
When I exit program 1, program 2 will exit as well. But not before program 1 does.

我已经尝试过这个代码:

@echo off
cd "C:\Program Files\CCleaner"
start CCleaner64.exe

cd "C:\Program Files (x86)\Wunderlist2"
start Wunderlist.exe

这个程序会同时打开两个程序,但是当我退出“CCleaner”时,Wunderlist 仍然保持打开状态。

答案1

您需要立即启动程序 2,然后启动程序 1 并等待其完成。完成后,您需要终止程序 2。

尝试这个:

@echo off
start "C:\Program Files (x86)\Wunderlist2\Wunderlist.exe”
start /wait "C:\Program Files\CCleaner\CCleaner64.exe”
taskkill /f /im “Wunderlist.exe”

答案2

您可以这样做。我必须告诉您,这可能不是最好的方法,但如果我需要快速修复,我会这样做。

首先,找到两个进程的进程 ID。对吗?

接下来,通过 grep 或任何类似命令扫描正在运行的进程列表。每秒扫描一次。

检查两个 ID 是否仍然存在。一旦循环发现其中一个进程未找到,就终止另一个进程。

但是是的,这意味着您必须在后台运行另一个循环进程,这可能会降低您的电脑速度,但不会降低很多。

如果您确实发现更好的想法,请在此处发表评论

相关内容