2010-10-02 3 views
1

Я назначил задачу на Windows-XP с помощью утилиты schtasks, но задача не запускается. Вот то, что я вижу в файле журнала SchedLgU.Txt:Почему «schtasks» не выполняет мою работу?

"MySQL Automatic Backup.job" (WampServer) 10/2/2010 6:36:43 PM ** ERROR ** 
Unable to start task. 
The specific error is: 
0x800700c1: (Unable to find an error message) 
Try using the Task page Browse button to locate the application. 

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

schtasks /create /tn "MySQL Automatic Backup" 
     /tr "d:\path with spaces to my script\my script.bat" /sc daily ... 

Если я заменяю пробелы с подчеркиванием, например, проблема исчезает.

Как я могу решить эту проблему?

И еще один вопрос:
Что означает столбец Start In на выходе для schtasks /query /v?

Спасибо!

ответ

5

Я нашел ответ:

Spaces in file paths can be used by using two sets of quotes, 
one set for CMD.EXE and one for SchTasks.exe. 
The outer quotes for CMD need to be double quotes; 
the inner quotes can be single quotes or escaped double quotes. 

т.е. он должен быть таким:

schtasks /create /tn "MySQL Automatic Backup" 
     /tr "\"d:\path with spaces to my script\my script.bat\"" /sc daily ... 
+0

Я добавил свою задачу через C# код. Я могу выполнить действие как полный путь exe в «планировщике задач». Но все же, когда время приходит на выполнение, оно не работает и отображается следующее задание. Schtasks/query в cmd говорит, что «не удалось запустить» в качестве статуса. Что должно быть неправильно ??? –

+0

Ничего себе это привело меня к правильному пути. Использование \ "для внутренних котировок. См. Http://stackoverflow.com/questions/16723940/powershell-add-task-to-run-powershell-script-with-parameters/16737858#16737858 – Brent

Смежные вопросы