Я пытаюсь запустить командный файл в Windows 7 из планировщика заданий. Я могу запустить командный файл нормально, если я запускаю его из командной строки.
Если я запускаю его из планировщика задач, чтобы он запускался только при входе пользователя, задача будет выполняться без проблем. Однако, когда он запускается, когда пользователь не вошел в систему, планировщик задач выглядит так, как будто он запускает файл, но ничего не происходит.
Я попытался изменить командный файл на ничего, кроме следующей строки, чтобы убедиться, что это не из-за того, что находится в командном файле:
echo "success" >> c:\temp\test.log
и это не работает. Любые идеи? У меня он запускается с наивысшими привилегиями и с учетной записью администратора, которая имеет полные права доступа к пакетному файлу и папке, в которую файл записывается.
источник
Ответы:
РАСПИСАНИЕ ЗАДАНИЯ: СЦЕНАРИЙ ЗАПЛАНИРОВАННОЙ ПАРТИИ НЕ РАБОТАЕТ
Свойства планировщика задач. , ,
Из Windows
Task Scheduler
на работеProperties
(см. Большинство снимков экрана внизу) в. , ,1.
General
убедитесь, что нижеперечисленные параметры выбраны / отмечены или не отмечены, как показано на экране печати ARun only when user is logged on
Run whether user is logged on or not
Run with the highest privileges
2.
Conditions
Вкладка, убедитесь , что ниже опций выбора , проверяется , или бесконтрольно так же , как показано на Print Screen BWake the computer to run this task
3.
Actions
нажмите вкладкуEdit
и убедитесь, чтоStart in (optional)
она установлена так, как показано в примере ниже ( НЕ ставьте двойные кавычки вокруг него) для полного пути, указывающего, где находится пакетный скрипт, БЕЗ окончательной обратной косой черты "\
" Экран печати CСООБРАЖЕНИЯ БЕЗОПАСНОСТИ
Как только вы нажмете
OK
( 2. выше), он должен запросить у вас учетные данные для запуска этогоEXECUTE
файла , и именно эти учетные данные потребуют доступа к пакетному файлу, где он существует, и также потребуется доступ для выполнения любого запускаемого пакетного файла. что ты выписал.Для этого процесса лучше всего настроить статическую учетную запись пользователя службы / прокси, а затем использовать ее учетные данные для запуска процесса. Вам нужно убедиться, что его пароль надежный и он никогда не истекает, и ему нужен доступ к
EXECUTE
пакету и запуск независимо от того, запущен ли процесс пакетного сценария и какие команды и ресурсы, и т. Д. он также использует.Кажется, опция, которую
Run whether user is logged on or not
вы ДОЛЖНЫ проверить,Run with highest privileges
чтобы она работала так, как ожидалось от планировщика заданий.Проверка ошибок
Если есть проблема с фактическим пакетным сценарием, но планировщик задач Windows фактически выполняет его, чтобы запустить его, но логическая ошибка пакетного сценария выдает ошибки и т. Д. По какой-либо причине, планировщик задач может не увидеть этот сбой на этом уровне. С его точки зрения (по умолчанию в большинстве случаев) он выполняет командный файл, поэтому, если он может его выполнить и имеет доступ к нему, его работа выполнена успешно.
Добавьте проверку ошибок или ведение журнала в логику пакетного сценария, чтобы выявить (или устранить неисправности ) проблемы на этом уровне, включая обеспечение того, чтобы контекст безопасности, в котором его выполняет пакетный планировщик, имел соответствующий доступ к командам, ресурсам и т. Д., К которым запускается пакетный сценарий.
Вопросы групповой политики
ПРОВЕРЬТЕ ПОЛИТИКУ ГРУППЫ И ВХОДИТЕ КАК РАЗРЕШЕНИЕ НА РАБОТУ
Логика пакетного сценария с подключенными дисками или полным UNC-путем и проблемы. , ,
Если ваш сценарий ссылается на подключенный сетевой диск, но вы этого хотите
Run whether the user is logged on or not
, то в этом контексте сопоставление дисков может фактически отсутствовать, чтобы пакетный процесс мог выполнить то, что ожидалось.Если возможно, используйте
UNC
пути в логике пакетного сценария, а не букву подключенного диска, чтобы избежать проблем. В противном случае вам может понадобиться использоватьPUSHD \\ServerName\ShareName
в начале пакетного процесса, а затем использоватьPOPD
в конце пакетного процесса. Вы можете сопоставить диск сNET USE X: \\ServerName\ShareName
в начале пакетного процесса, а затем отключить диск сNET USE X: /DELETE
в конце пакетного процесса.ДРУГАЯ
MS HOTFIX (KB977353): элемент предпочтения «Немедленная задача групповой политики» не запускается на клиентском компьютере под управлением Windows 7 или Windows Server 2008 R2
Посмотрите на
Settings
вкладку запланированного задания и опцию, указанную какStop the task if it runs longer than:
. Если выбрана эта опция, а период времени меньше, чем у сценария, который запускается, планировщик заданий прекратит его раньше, и поэтому вы можете не получить ожидаемых результатов. Это что-то еще, чтобы проверить при устранении неполадок на всякий случай.На
Triggers
вкладке запланированного задания, когда вы выбираетеEdit
опцию, обязательно установитеStart:
время и дату для значения, которое НЕ уже передано. Убедитесь, что для этого значения даты и времени установлены значения в будущем . В противном случае вы можете заметить, что задание указывает, что оно запланировано на следующий запланированный срок, как вы ожидаете; однако он не выполняется планировщиком заданий, и вкладка планировщика заданий неHistory
показывает, что он когда-либо выполнялся (потому что это не так). Просто отредактируйте триггер и обновите его, указав будущую дату и / или время, чтобы решить эту проблему, если она возникла.ПЕЧАТНЫЕ ЭКРАНЫ
Экран печати A
Экран печати B
Экран печати C
источник