Exécution périodique script VBS

Résolu
damb37530 Messages postés 12 Statut Membre -  
damb37530 Messages postés 12 Statut Membre -
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 ?

4 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    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
  2. dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention   2 547
     
    Salut
    il existe des utilitaires pour empêcher la mise en veille, exemple "Don't Sleep" qui inclus un timer.
    0
  3. damb37530 Messages postés 12 Statut Membre
     
    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
  4. damb37530 Messages postés 12 Statut Membre
     
    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