OVH Cloud OVH Cloud

Win32_ScheduledJob comment scheduler une tache

1 réponse
Avatar
Olivier
Bonjour à tous,

J'essais desespérément de programmer une tache dans un pc distant, j'ai le
petit code ci dessou, il fonctionne bien, sauf que je n'arrive pas à lancer
ma tache le jour même, elle se met en attente à j+1, je n'ais pas bien
compris le system horaire utilisé dans cette fonction.

Voici mon code :
====================================================================
strComputer = "monpc"
stimezone = "-420"
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\"
& strComputer & "\root\cimv2")
Set objNewJob = objWMIService.Get("Win32_ScheduledJob")
errJobCreated =
objNewJob.Create("Notepad.exe","********123000.000000+120",False, "", ,
False, JobID)

If errJobCreated <> 0 Then
WScript.Echo "Erreur à la création de la tâche"
Else
WScript.Echo "Tache créée"
End If
=================================================================
La tache se schedule pour 12H30 mais le lendemain, je voudrais la scheduler
pour le jour même !!!

Au secours !!!!


Olivier

1 réponse

Avatar
Sebastien Piche
salut j'ai fait quelque test

et il faut que tu mettre la date du jour si non c'est le lendemain tu
pourait toujour faire une passe passe avec Date qui te retourne la date du
jour il te reste en suprimé les - contenue dans la string

donc ça donne ce si


ps: a la fin j'ai mis la référence sur le sytem de date tiré du SDK anglais
___________________________________________
mydate = Date
Myjobdate = Replace( mydate, "-", "")

strComputer = "."
stimezone = "-420"
Set objWMIService =
GetObject("winmgmts:{impersonationLevel=impersonate}!"& strComputer &
"rootcimv2")
Set objNewJob = objWMIService.Get("Win32_ScheduledJob")
objNewJob.Create "Notepad.exe", Myjobdate& "153000.000000-420",False, "",
,False, JobID

If errJobCreated <> 0 Then
WScript.Echo "Erreur à la création de la tâche"
Else
WScript.Echo "Tache créée"
End If
__________________________________________


Data type: datetime
Access type: Read-only

UTC time to run the job, in the form of YYYYMMDDHHMMSS.MMMMMM(+-)OOO, where
YYYYMMDD must be replaced by ********. The replacement is necessary because
the scheduling service only allows jobs to be configured to run one time, or
run on a day of the month or week. A job cannot be run on a specific date.

Example: ********123000.000000-420 which implies 12:30 P.M. PST with
daylight savings time in effect.


"Olivier" a écrit dans le message de news:
OFNo6$
Bonjour à tous,

J'essais desespérément de programmer une tache dans un pc distant, j'ai le
petit code ci dessou, il fonctionne bien, sauf que je n'arrive pas à
lancer
ma tache le jour même, elle se met en attente à j+1, je n'ais pas bien
compris le system horaire utilisé dans cette fonction.

Voici mon code :
=================================================================== > strComputer = "monpc"
stimezone = "-420"
Set objWMIService =
GetObject("winmgmts:{impersonationLevel=impersonate}!"
& strComputer & "rootcimv2")
Set objNewJob = objWMIService.Get("Win32_ScheduledJob")
errJobCreated > objNewJob.Create("Notepad.exe","********123000.000000+120",False, "", ,
False, JobID)

If errJobCreated <> 0 Then
WScript.Echo "Erreur à la création de la tâche"
Else
WScript.Echo "Tache créée"
End If
================================================================ > La tache se schedule pour 12H30 mais le lendemain, je voudrais la
scheduler
pour le jour même !!!

Au secours !!!!


Olivier