2010-10-02 22 views
1

J'ai planifié une tâche sous Windows XP en utilisant l'utilitaire schtasks, mais la tâche ne s'exécute pas. Voici ce que je vois dans le fichier journal SchedLgU.Txt:Pourquoi "schtasks" ne fonctionne pas mon travail?

"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. 

j'ai découvert que la raison de cette erreur est d'espaces dans le chemin de mon script. La commande que je l'habitude de mettre en place le regard des tâches comme:

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

Si je remplace les espaces par des underscores, par exemple, le problème disparaît.

Comment pourrais-je résoudre ce problème?

Et une autre question:
Que signifie la colonne Start In dans la sortie pour schtasks /query /v?

Merci!

Répondre

5

Je trouve la réponse:

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. 

à-dire qu'il devrait être comme ceci:

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

J'ai ma tâche ajouté à C# code. Je peux c l'action comme le chemin complet de l'exe dans "planificateur de tâches". Mais quand le temps vient pour l'exécution, cela ne marche pas et l'heure de la tâche suivante est affichée. Le schtasks/query dans cmd dit "ne pouvait pas démarrer" comme statut. Qu'est-ce qui ne va pas ??? –

+0

Wow, cela m'a conduit sur la bonne voie. En utilisant \ "pour les citations internes.Voir http://stackoverflow.com/questions/16723940/powershell-add-task-to-run-powershell-script-with-parameters/16737858#16737858 – Brent