Comment lancer une tâche planifiée?

Le
fred
Bonjour,
Je n'arrive pas à lancer une tâche planifiéej'utilise ce script avec
schtasks.exe :
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ("schtasks.exe /run /s \"&NomORDI&" /u "&NomUtilisateur&" /p
"&MotDePAsse_Utilisateur&" /TN "&NomdelaTâche&"")

la script se lancemais aucune exéxution n'est faite?
Merci de m'aider!
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jbongran
Le #667350
fred wrote:
Bonjour,
Je n'arrive pas à lancer une tâche planifiée...j'utilise ce script
avec schtasks.exe :
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ("schtasks.exe /run /s \"&NomORDI&" /u
"&NomUtilisateur&" /p "&MotDePAsse_Utilisateur&" /TN
"&NomdelaTâche&"")
la script se lance...mais aucune exéxution n'est faite?
Merci de m'aider!


Y aurait pas une double quote en trop à la fin de la ligne de commande,
masquée par un On Error Resume Next ?
Pour debugger rapidement ce genre de code:
strCmd = "schtasks.exe /run /s " & NomORDI & _
" /u " & NomUtilisateur & " /p " & MotDePAsse_Utilisateur & _
" /tn "& NomdelaTâche
WScript.Echo strCmd
WshShell.Run (strCmd)

Extrait de cette fiche:
http://support.microsoft.com/kb/814596/en-us
Schtasks /Run
Starts a scheduled task immediately. The run operation ignores the schedule,
but uses the program file location, user account, and password that are
saved in the task to run the task immediately. .Syntax:schtasks /run /tn
TaskName [/s computer [/u [domain]user /p password]] /?
.Parameters: ./tn TaskName Identifies the task. This parameter is required.
./s Computer Specifies the name or IP address of a remote computer with or
without backslash characters. The default is the local computer.
./u [domain]user Runs the command with the permissions of the specified
user account. By default, the command runs with the permissions of the user
who it logged on to the computer that is running Schtasks.
./p password Specifies the password of the user account that you specified
in the /u parameter. This parameter is required when the /u parameter is
used.

fred
Le #667349
Merci jbongran pour ton aide.
J'ai utilisé le debugger...en fait j'ai envlevé les différents quotes et le
caractère &...ce qui donne
strCmd = "schtasks.exe /run /s \NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN NomdelaTâche"
En echo j'ai bien la ligne de commande (donc la syntaxe est correcte)...mais
toujours impossible de lancer la tâche!
Si j'utilise en commande DOS avec cmd et la même commande :
strCmd = "schtasks.exe /run /s \NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN NomdelaTâche"
ça fonctionne sans problème!
Donc je ne comprends toujours pas pourquoi le script ne permet pas de lancer
la tâche planifiée en question!!!
Merci pour votre aide...



"jbongran"
fred wrote:
Bonjour,
Je n'arrive pas à lancer une tâche planifiée...j'utilise ce script
avec schtasks.exe :
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ("schtasks.exe /run /s \"&NomORDI&" /u
"&NomUtilisateur&" /p "&MotDePAsse_Utilisateur&" /TN
"&NomdelaTâche&"")
la script se lance...mais aucune exéxution n'est faite?
Merci de m'aider!


Y aurait pas une double quote en trop à la fin de la ligne de commande,
masquée par un On Error Resume Next ?
Pour debugger rapidement ce genre de code:
strCmd = "schtasks.exe /run /s " & NomORDI & _
" /u " & NomUtilisateur & " /p " & MotDePAsse_Utilisateur & _
" /tn "& NomdelaTâche
WScript.Echo strCmd
WshShell.Run (strCmd)

Extrait de cette fiche:
http://support.microsoft.com/kb/814596/en-us
Schtasks /Run
Starts a scheduled task immediately. The run operation ignores the
schedule, but uses the program file location, user account, and password
that are saved in the task to run the task immediately. .Syntax:schtasks
/run /tn TaskName [/s computer [/u [domain]user /p password]] /?
.Parameters: ./tn TaskName Identifies the task. This parameter is
required.
./s Computer Specifies the name or IP address of a remote computer with or
without backslash characters. The default is the local computer.
./u [domain]user Runs the command with the permissions of the specified
user account. By default, the command runs with the permissions of the
user who it logged on to the computer that is running Schtasks.
./p password Specifies the password of the user account that you specified
in the /u parameter. This parameter is required when the /u parameter is
used.




Gilles LAURENT
Le #667348
"fred" news:4633443c$0$25647$
Bonjour,

Je me permets de m'immiscer dans cette conversation.

A priori tout semble en ordre. Essayez de récupérer un éventuel message
d'erreur généré par l'outil schtasks. Pour cela, créer ou adapter votre
script avec le code suivant :

--- Coupez ici ---
Set oSh=CreateObject ("WScript.Shell")
Set oExec = oSh.Exec ("schtask /run ...") ' <- à compléter
WScript.Echo oExec.StdErr.ReadAll
--- Coupez ici ---

Si un message d'erreur est généré par l'outil schtasks alors celui-ci
s'affichera dans une popup (wscript) ou alors dans la console active
(cscript). Tenez-nous au courant.

Je m'éclipse en silence monastique ;-)

--
Gilles LAURENT
http://glsft.free.fr
jbongran
Le #667063
fred wrote:
Merci jbongran pour ton aide.
J'ai utilisé le debugger...en fait j'ai envlevé les différents quotes
et le caractère &...ce qui donne
strCmd = "schtasks.exe /run /s \NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN NomdelaTâche"
En echo j'ai bien la ligne de commande (donc la syntaxe est
correcte)...mais toujours impossible de lancer la tâche!
Si j'utilise en commande DOS avec cmd et la même commande :
strCmd = "schtasks.exe /run /s \NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN NomdelaTâche"
ça fonctionne sans problème!
Donc je ne comprends toujours pas pourquoi le script ne permet pas de
lancer la tâche planifiée en question!!!
Merci pour votre aide...



"jbongran"
fred wrote:
Bonjour,
Je n'arrive pas à lancer une tâche planifiée...j'utilise ce script
avec schtasks.exe :
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ("schtasks.exe /run /s \"&NomORDI&" /u
"&NomUtilisateur&" /p "&MotDePAsse_Utilisateur&" /TN
"&NomdelaTâche&"")
la script se lance...mais aucune exéxution n'est faite?
Merci de m'aider!


Y aurait pas une double quote en trop à la fin de la ligne de
commande, masquée par un On Error Resume Next ?
Pour debugger rapidement ce genre de code:
strCmd = "schtasks.exe /run /s " & NomORDI & _
" /u " & NomUtilisateur & " /p " & MotDePAsse_Utilisateur & _
" /tn "& NomdelaTâche
WScript.Echo strCmd
WshShell.Run (strCmd)

Extrait de cette fiche:
http://support.microsoft.com/kb/814596/en-us
Schtasks /Run
Starts a scheduled task immediately. The run operation ignores the
schedule, but uses the program file location, user account, and
password that are saved in the task to run the task immediately.
.Syntax:schtasks /run /tn TaskName [/s computer [/u [domain]user /p
password]] /? .Parameters: ./tn TaskName Identifies the task. This
parameter is required.
./s Computer Specifies the name or IP address of a remote computer
with or without backslash characters. The default is the local
computer. ./u [domain]user Runs the command with the permissions of
the specified user account. By default, the command runs with the
permissions of the user who it logged on to the computer that is
running Schtasks. ./p password Specifies the password of the user
account that you specified in the /u parameter. This parameter is
required when the /u parameter is used.



Essayer avec un "%COMSPEC% /K schtasks.exe /run /s NomORDI /u NomUtilisateur
/p MotDePAsse_Utilisateur /TN NomdelaTâche"
La fenêtre de commande (%COMSPEC%)qui s'ouvre (et qui ne se fermera pas
grâce au /K) devrait vous en dire plus sur ce qui se passe.
Le compte utilisé est le même que celui en interactif, si on omet /u et /p
le compte lançant le script vbs sera utilisé.
Si l'ordianateur fait partie d'un domaine, la syntaxe \domaineutilisateur
est à retenir.
Si le nom de la tâche contient des espaces, il est peut être (méthode
empirique car pas testé) de l'encadrer de double quote.
Ce qui au final donnerait:
strCmd = "%COMSPEC% /K schtasks.exe /run /s NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN ""NomdelaTâche"""



fred
Le #667062
Merci pour vos différentes aides...j'ai pu corriger le script grâce à
"%COMSPEC% /K qui m'a permis de cerner le problème...problème d'espace dans
le nom de la tâche à planifier!

"jbongran"
fred wrote:
Merci jbongran pour ton aide.
J'ai utilisé le debugger...en fait j'ai envlevé les différents quotes
et le caractère &...ce qui donne
strCmd = "schtasks.exe /run /s \NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN NomdelaTâche"
En echo j'ai bien la ligne de commande (donc la syntaxe est
correcte)...mais toujours impossible de lancer la tâche!
Si j'utilise en commande DOS avec cmd et la même commande :
strCmd = "schtasks.exe /run /s \NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN NomdelaTâche"
ça fonctionne sans problème!
Donc je ne comprends toujours pas pourquoi le script ne permet pas de
lancer la tâche planifiée en question!!!
Merci pour votre aide...



"jbongran"
fred wrote:
Bonjour,
Je n'arrive pas à lancer une tâche planifiée...j'utilise ce script
avec schtasks.exe :
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ("schtasks.exe /run /s \"&NomORDI&" /u
"&NomUtilisateur&" /p "&MotDePAsse_Utilisateur&" /TN
"&NomdelaTâche&"")
la script se lance...mais aucune exéxution n'est faite?
Merci de m'aider!


Y aurait pas une double quote en trop à la fin de la ligne de
commande, masquée par un On Error Resume Next ?
Pour debugger rapidement ce genre de code:
strCmd = "schtasks.exe /run /s " & NomORDI & _
" /u " & NomUtilisateur & " /p " & MotDePAsse_Utilisateur & _
" /tn "& NomdelaTâche
WScript.Echo strCmd
WshShell.Run (strCmd)

Extrait de cette fiche:
http://support.microsoft.com/kb/814596/en-us
Schtasks /Run
Starts a scheduled task immediately. The run operation ignores the
schedule, but uses the program file location, user account, and
password that are saved in the task to run the task immediately.
.Syntax:schtasks /run /tn TaskName [/s computer [/u [domain]user /p
password]] /? .Parameters: ./tn TaskName Identifies the task. This
parameter is required.
./s Computer Specifies the name or IP address of a remote computer
with or without backslash characters. The default is the local
computer. ./u [domain]user Runs the command with the permissions of
the specified user account. By default, the command runs with the
permissions of the user who it logged on to the computer that is
running Schtasks. ./p password Specifies the password of the user
account that you specified in the /u parameter. This parameter is
required when the /u parameter is used.



Essayer avec un "%COMSPEC% /K schtasks.exe /run /s NomORDI /u
NomUtilisateur /p MotDePAsse_Utilisateur /TN NomdelaTâche"
La fenêtre de commande (%COMSPEC%)qui s'ouvre (et qui ne se fermera pas
grâce au /K) devrait vous en dire plus sur ce qui se passe.
Le compte utilisé est le même que celui en interactif, si on omet /u et /p
le compte lançant le script vbs sera utilisé.
Si l'ordianateur fait partie d'un domaine, la syntaxe
\domaineutilisateur est à retenir.
Si le nom de la tâche contient des espaces, il est peut être (méthode
empirique car pas testé) de l'encadrer de double quote.
Ce qui au final donnerait:
strCmd = "%COMSPEC% /K schtasks.exe /run /s NomORDI /u NomUtilisateur /p
MotDePAsse_Utilisateur /TN ""NomdelaTâche"""






Publicité
Poster une réponse
Anonyme