使用批处理文件操作停止计划任务不会停止在批处理文件中运行的程序

Chr*_*son 8 windows command-line batch-file windows-task-scheduler

我有几个计划任务,每个任务都执行一个(不同的)批处理文件。每个批处理文件调用同一个程序,使用单独的命令行参数。如果我在运行时停止任务,批处理文件中的程序仍会运行。(批处理文件是一个单行文件,只执行程序。)

当我停止调用批处理文件的任务时,如何强制从批处理文件启动的程序强制退出?

作为一种解决方法,我在正在运行的进程中查找任务,并通过进程 id 杀死它。我想要一个从任务计划程序管理的更干净的解决方案。

小智 0

无法从任务计划程序停止从批处理文件调用的程序。

任务调度程序只知道它已启动的批处理文件。因此,它只能与正在运行的进程交互,而不能与可能从中产生的任何其他进程交互。

最好的选择是放弃批处理文件并直接在计划任务中运行可执行文件。这样它就会知道 EXE 作为进程所在的位置并能够停止它。