Task-Scheduler не может автоматически ожидать выполнения каждого производного процесса / приложения. Как только основной дескриптор «завершается», задача считается выполненной, и ее статус становится готовым, даже если в фоновом режиме все еще выполняется какой-либо материал.
Пример:
Рассмотрим две задачи со следующими действиями:
- Программа
cmd.exe
, Параметры: /c pause
- Программа
cmd.exe
, Параметры: /c "start cmd.exe /c pause"
В случае 1 планировщик задач будет говорить «выполняется», пока окно cmd не закроется. (Что вы просите?) Случай 2 вызывает действие из первого окна cmd. Таким образом, даже если второе командное окно остается открытым, процесс, созданный самим планировщиком задач, завершается - следовательно, он считает выполнение выполненным и переключается обратно на «готово».
Итак: убедитесь, что ваш основной процесс, запущенный планировщиком задач (и, возможно, вызывая другие процессы), не завершится, пока вся работа не будет завершена.
в приведенном выше примере это может быть достигнуто как
- Программа
cmd.exe
, Параметры: /c "start /wait cmd.exe /c pause"
Окно 2 будет приостановлено, и окно 1 ожидает закрытия окна 2, оставляя этот процесс в активном состоянии. Итак, планировщик задач продолжает отображать «выполняется».
, чтобы дать менее общий ответ, вы должны обновить свой вопрос с более подробной информацией: какую задачу вы выполняете? Что это за сценарий? Какие у вас настройки задач и как вы себя ожидаете?