如何才能找出崩溃任务的确切命令行(或任务名称)?

如何才能找出崩溃任务的确切命令行(或任务名称)?

假设我在 Windows 任务计划程序中有 3 个任务。它们运行相同的应用程序,但使用不同的命令行参数:

  • 任务A:myprogram.exe -a
  • 任务B:myprogram.exe -b
  • 任务C:myprogram.exe -c

Windows 错误报告会不定期出现,因为其中一个任务创建的某个进程崩溃了。

我也可以在事件日志中看到它,但我不知道它是哪项任务。

当 Windows 错误报告捕获从 Windows 任务计划程序运行的崩溃进程时,有没有办法查看命令行参数或任务名称?

答案1

任务调度程序每个任务都有一个结果列。

您可以查看哪些任务成功,哪些任务以错误代码结束,以查看哪些任务崩溃。当然,这只有在任务再次运行之前才可见。

如果您需要更好的方法来解决这个问题,请考虑创建一个小型的启动 .cmd 文件并使用它来代替您的程序。

然后,.cmd 文件可以将其启动的时间/日期输出到日志文件,并且程序结束后,将 %errorlevel% 和时间/日期写入日志文件,指示其结束时间。

此类 .cmd 文件的示例如下:

echo %date% %time% : Program X started >> log.txt
start "" "myprogram.exe -A" /wait
echo %date% %time% : Program with parameters -A terminated with errorcode: %errorlevel% >> log.txt
echo. >>log.txt

相关内容