我需要编写代码来使批处理文件同时启动 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 是否仍然存在。一旦循环发现其中一个进程未找到,就终止另一个进程。
但是是的,这意味着您必须在后台运行另一个循环进程,这可能会降低您的电脑速度,但不会降低很多。
如果您确实发现更好的想法,请在此处发表评论