Подтвердить что ты не робот

Планировщик задач Windows не запускает задачу пакетного файла

У меня есть командный файл с приведенным ниже кодом, чтобы остановить и запустить службу SQL Report:

net stop "SQL Server Reporting Services (MSSQLSERVER)" 

timeout /t 10

net start "SQL Server Reporting Services (MSSQLSERVER)"

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

Может ли кто-нибудь направить меня к тому, что мне не хватает? Благодаря

4b9b3361

Ответ 1

Убедитесь, что вы правильно задали параметры "Начать в" и "Программа/script. Если ваш адрес файла: C:\Temp\foo.bat, установите для параметра" start in "значение" C:\Temp "и" Program/ script "в" foo.bat".

Чтобы установить параметр "Начать в": Задайте задачу правой кнопкой мыши в планировщике задач > Properties > Actions > Edit.

Если это само по себе не работает, попробуйте переместить файл .bat в каталог с базовыми разрешениями (например, для общего каталога).

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

Ответ 2

Потратил много времени на эту глупую проблему!

добавьте команду cd, где ваш пакетный файл находится в первой строке вашего командного файла, и посмотрите, разрешает ли он проблему.

cd D:\wherever\yourBatch\fileIs

СОВЕТ: используйте абсолютные пути, относительные пути в идеале не должны быть проблемой, но планировщику сложно понять их.

Ответ 3

У меня была та же проблема. Я считаю, что это проблема привилегий. Если вы выбрали "Run only when user logged on", это не произойдет.

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

Ответ 4

Если у вас такая же проблема, убедитесь, что вы проверяете "Запускать только при входе пользователя", по крайней мере, это то, что заставило мой bat файл снова жить.

Ответ 5

Это довольно старый поток, но проблема остается прежней -

Я пробовал несколько вещей, ни одна из них не работала -

  • Добавлен Пуск в пути (без кавычек)
  • Удален полный путь к пакетному файлу в программе /Script поле и т.д.
  • Добавлен C:\Windows\system32\cmd.exe в программу и добавлен /c myscript.bat в поле аргументов.

Это то, что сработало для меня -

Программа/Script Поле - cmd

Добавить аргументы -/c myscript.bat

В начало: Путь к myscript.bat

Ответ 6

Установите 'Программа/ script' file.bat set 'Начать в' остальную часть пути (file.bat)

Ответ 7

Решение состоит в том, что вы должны снять флажок (деактивировать): "Запускать только при входе пользователя".

После этого изменения он начнет работать на моей машине.

Ответ 8

Одно из решений - вы можете запустить файл '. bat' с файлом '. vbs', и вы можете запустить этот файл vbs в планировщике окон.

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run("cron_jobs.bat"), 0, True

Вы можете сделать это, и я надеюсь, что он исправит вашу проблему.

Ответ 9

Попробуйте выполнить код ниже:

Batchfile.bat:

cd c:\batchfilepath
net stop "SQL Server Reporting Services (MSSQLSERVER)" 
timeout /t 10
net start "SQL Server Reporting Services (MSSQLSERVER)"

Ответ 10

Для меня проблема вызвана тем, что .bat включил a cd в сетевой диск. Это не удалось, а затем более поздний вызов программы на этом сетевом диске ничего не сделал.

Я понял это, добавив > log.txt в поле Добавить аргументы окна Изменить действие для задачи.

Ответ 11

Для меня это была проблема с запуском. По умолчанию он должен On a Schedule на вкладке триггера. Я выбрал At log on, а затем я ожидал выполнения задачи. Как видно из названия при входе в систему, вы должны выйти и войти в систему.

Попробуйте поместить его в расписание и стрелять каждую минуту.

введите описание изображения здесь