Назад | Перейти на главную страницу

Планировщик заданий не может успешно выполнять сценарии .vbs

Прошу прощения, если есть действительно очевидный ответ!

У нас есть несколько ежедневных задач, которые мы запускаем через скрипт .vbs на нашем сервере (через Диспетчер задач), и в течение нескольких месяцев все было хорошо, но недавно мы столкнулись с проблемой. Сценарии .vbs перестали успешно выполняться (всегда истекло время ожидания) ... но все еще могли выполняться вручную без проблем (!).

Не зная ни одной веской причины, по которой у Планировщика заданий должны возникать проблемы, мы подумали, что попробуем немного «творчески подумать» и запустить .vbs другим способом: через файл .bat, выполняемый планировщиком заданий. Мы снова столкнулись со странными проблемами, но на этот раз с немного большей отладочной информацией.

Файл .bat, запускаемый планировщиком заданий, - это не что иное, как ...

CScript "C:\location\script.vbs" > Log.txt

Но после попытки запустить Планировщик задач дает сбой со следующей ошибкой:

0x1: Была вызвана неправильная функция или неизвестная функция.

Log.txt (как вывод из файла .bat выше) говорит:

Ошибка CScript: сбой при инициализации узла сценариев Windows. (Недостаточно памяти для обработки этой команды.)

Но получите вот это: Файл .bat отлично работает (скрипт vbs и все такое), если он запускается двойным щелчком! Проблема возникает только тогда, когда он запускается планировщиком заданий. Какого черта?

Были запущены Windows Server 2008 R2 (x64) и да, результаты Task Sheduler одинаковы вне зависимости от того, вошел ли пользователь в систему или нет. Кроме того, пользователь, который может успешно запускать сценарии вручную, также является тем же пользователем, который запускает сценарии в Планировщике заданий.

Спасибо за любую помощь в решении этой странной проблемы!

Как выяснилось, на самом деле это была нехватка памяти. Перезагрузка сервера и снова освобождение 16 Гб позволили ему все-таки запустить. Нет проблем с разрешениями пользователей. Нет проблем с учетными данными пользователя. Это была просто странная проблема с памятью (я заметил, что что-то происходит, когда я не могу запустить диспетчер конфигурации SQL или успешно установить какие-либо обновления через Центр обновления Windows).

Я предполагаю, что планировщик заданий не имел разрешения на возврат оперативной памяти, тогда как пользователь-администратор, запускающий .bat вручную, имел.

Банка с червями: открытая. * всхлип *

Похоже, проблема с правами запланированного задания. Убедитесь, что задаче назначены учетные данные, необходимые для запуска Windows Script Host. В диспетчере задач должно быть место для определения учетных данных учетной записи, под которой выполняется задача.