Планировщик задач Windows 7 продолжает возвращать рабочий код 2

Я настроил запланированное задание для запуска под своей учетной записью. Все, что он выполняет, даже если он успешен, возвращает операционный код (2). Я посмотрел этот код ошибки по ссылке ниже, и он утверждает, что не может найти конкретный файл.

http://www.hiteksoftware.com/knowledge/articles/049.htm

Даже если я сделаю что-то очень простое, я вернусь к операционному коду (2). Например:

run program: cmd.exe

start in path: c:\windows\system32

Я запускаю задачу и вижу, что процесс запускается в моем диспетчере задач, поэтому я убиваю задачу. Затем я проверяю историю запланированного задания, и оно отображается как (2).

Что-то более реалистичное из того, что я делаю:

<?
/* file in c:\php\test.php */
echo "hello";
?>

запустить программу: php.exe

начать с пути: c:\php

Аргументы: -f test.php

Все работает в командной строке, но задача расписания Windows продолжает возвращать операционный код (2). Я должен увидеть операционный код (0), что означает успешное, правильное?

Ответ 1

Возможно, вы не указали путь в диалоговом окне "Начать вход" (необязательно) диалогового окна "Действие".

Несмотря на то, что у вас был путь к исполняемой программе, Windows 7 все еще хочет, чтобы вы рассказали ей, где запускать программу.

Ответ 2

У меня была аналогичная проблема, и я обнаружил, что в дополнение к тому, что было предложено как в принятом ответе, так и в его комментариях, мне пришлось сделать еще одну вещь. Мне пришлось заново создать задачу и установить ее "настроить для" на Windows Server 2003, Windows XP или Windows 2000. Я не понимаю, почему, поскольку это не для какой-либо из этих ОС, но после того, как я так что моя задача действительно работала.

Если это выполняется и работает, но вы все равно получаете код ошибки, попробуйте ввести exit 0 в конце вашего script.

Мне потребовалось много поисковой системы, чтобы найти, что, надеюсь, это кому-то полезно.

Ответ 3

Я ударил, пока я просто не удалил и заново создал запланированное задание... теперь оно работает. Не знаю почему, но это так.

Ответ 4

Хорошо, я знаю, что опаздываю на вечеринку здесь, но я думаю, что большая часть проблемы связана с запутыванием Операционного кода с кодом возврата. Я не специалист по программированию или внутренним системам Windows (я зарабатываю на жизнь с помощью системы Windows для программирования, но мое программирование не для систем Windows).

Если я правильно понимаю: Операционный код задается тем, что когда-либо выполнялось под любой ценой, которую программист решил установить. Код возврата указывает на успех или неудачу.

Рассмотрим следующий (отредактированный) пример из истории одной из моих запланированных задач: Событие 201, Целевая категория "Действие завершено" показывает Операционный кодекс (2). Внизу ниже на вкладке "Общие" отображается сообщение:

Task Scheduler успешно завершила задачу "\ My_task", экземпляр "{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}", действие "C:.....\blahblah.exe" с кодом возврата 0.

Там есть признак успеха. Другой код возврата указывает на сбой. Операционный кодекс (2) просто указывает, что процедура была завершена (в этом случае), когда сообщается. Я не верю, что какие-либо заданные значения интерпретируются для кода операции.