Exécution périodique script VBS

Résolu/Fermé
damb37530 Messages postés 11 Date d'inscription lundi 21 juin 2010 Statut Membre Dernière intervention 20 septembre 2018 - 20 déc. 2016 à 16:21
damb37530 Messages postés 11 Date d'inscription lundi 21 juin 2010 Statut Membre Dernière intervention 20 septembre 2018 - 21 déc. 2016 à 11:13
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 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
21 déc. 2016 à 06:54
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 dimanche 22 août 2010 Statut Contributeur Dernière intervention 23 octobre 2020 2 476
21 déc. 2016 à 04:44
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 lundi 21 juin 2010 Statut Membre Dernière intervention 20 septembre 2018
21 déc. 2016 à 09:47
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 lundi 21 juin 2010 Statut Membre Dernière intervention 20 septembre 2018
21 déc. 2016 à 11:13
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