ситуация
У меня есть пакетный скрипт, который готовит некоторые файлы, выполняет программу ( .exe
), а затем удаляет указанные файлы.
Эта задача должна выполняться ежечасно, поэтому я пытаюсь настроить ее с помощью запланированных задач. Проблема в том, что ранее упомянутая программа не работает должным образом при вызове из задачи (ни через .bat
скрипт, ни при .exe
непосредственном вызове ), но я не получаю никаких предупреждений или сообщений об ошибках в журналах.
Настроить
Задача настроена для запуска в качестве учетной записи службы Windows, для которой все права установлены правильно. При использовании этой учетной записи для входа в систему через RDP, я могу выполнить .bat
и .exe
напрямую без проблем, но все же задача, похоже, ничего не делает. Это легко заметить, потому что программа всегда изменяет файл, а измененная отметка времени не изменяется в ходе выполнения задачи.
В журналах запланированных заданий я получаю информационные сообщения для задания, запускающего процесс, завершающего работу и т. Д. Однако, «код результата» 111
(пытался Google это без везения, единственное, что я получаю, это «имя файла слишком длинное»). ", который просто абсолютно не имеет отношения к AFAIK). В логах приложений я абсолютно ничего не получаю.
Что я подозреваю, это проблема
Программа - это старое чудовище, которое порождает какой-то экран-заставку (на самом деле это обычное окно), даже если графический интерфейс не нужен, потому что он не требует взаимодействия и закрывается после операций. Окно появляется примерно на 2 секунды.
Я подозреваю, что это требование для GUI как-то связано с ошибкой задачи, но я не уверен. Когда я вхожу с пользователем, под которым запускается задача (через RDP), при запуске запланированной задачи окно не появляется.
Редактировать о GUI
Я создал очень маленький исполняемый файл C #, который запускает программу без главного окна (используя ProcessStartInfo.WindowStyle = ProcessWindowStyle.Hidden
). Даже в этом случае запланированному заданию все равно не удается правильно запустить программу, но код возврата теперь 0
.
Обновить
Когда я настраиваю задачу, чтобы сказать «запускается ли пользователь вошел в систему или нет», и run with highest privileges
опция не отмечена , значение ошибки равно 2147943859
.
Что я могу сделать, чтобы устранить неполадки?
ОС = Windows Server 2008 R2 SP1
Если требуется дополнительная информация, пожалуйста, дайте мне знать в комментариях.
.exe
«программы» с параметрами из скрипта, входные данные должны быть правильно представлены в качестве аргумента.