Exécution périodique script VBS

Résolu
damb37530 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
damb37530 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche une solution pour empêcher la mise en veille d'un PC de 8h à 18h.
J'ai fait des tests avec la tâche planifié de windows mais le script s'effectue bien mais cela n'empêche pas la mise en veille.
Du coup je me suis orienter vers une solution avec un script vbs qui simule un appuie de la touche F5 toutes les minutes.
Set Ws = CreateObject("wscript.Shell")
Do
ws.Sendkeys "{F5}"
WScript.Sleep 60000
Loop

Cela fonctionne bien, par contre je souhaiterai effectuer ce scipt que entre 8h et 18h. Comment puis-je coder ça svp ?
A voir également:

4 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, suggestion:
Do 
   hr=hour(now())
   if hr <18 and hr >= 8
      ws.Sendkeys "{F5}" 
   end if
WScript.Sleep 60000 
Loop 

Peut-être utile de faire des sleep plus long entre 18h et 8h, à ton choix, :-)
1
dsy73 Messages postés 9252 Date d'inscription   Statut Contributeur Dernière intervention   2 485
 
Salut
il existe des utilitaires pour empêcher la mise en veille, exemple "Don't Sleep" qui inclus un timer.
0
damb37530 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Merci pour vos retours.
Pour dsy73, non je ne peux pas installer de logiciel sur le PC.

Yg_be je vais faire des tests avec ta solution.
Je vous tiens au courant.
0
damb37530 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

Voici donc le script final :
Set Ws = CreateObject("wscript.Shell")
Do
hr=hour(now())
if hr <18 and hr >= 8 then
ws.Sendkeys "{F5}"
end if
WScript.Sleep 60000
Loop

Merci Yg_be pour la solution.

A+
0