[Résolu] Lancement du batch ...
Hello !
Merci Hackoo, j'ai en effet pas mal de question :
Ce code analyse donc tous les événements au fur et à mesure depuis son lancement et si il détecte une sortie de mise en veille alors il agit en conséquence,jusque là je suis bien ?? ( mais à quels événements correspondent les Case ? j'imagine que le 7 correspond à la mise en veille mais j'ai des doutes ...)
Voilà ce que j'ai compris ( je ne connais rien au vbscript à part MsgBox donc j'ai un peu de mal
) :
1) - Variables :Code:
Set oShell = CreateObject("WScript.Shell")
Set colMonitoredEvents = GetObject("winmgmts:")._ 2) - Inconnu ( enfin je pense qu'il demande à recevoir quelque chose, une notification, un événement qui va ensuite servir ) :Code:
ExecNotificationQuery("Select * from Win32_PowerManagementEvent") 3) - Début d'une boucle et affectation de variable et goto ( l'équivalent de goto :%objLatestEvent% ?? ) avec la variable objLatestEvent qui est de type événement :Code:
Do
Set objLatestEvent = colMonitoredEvents.NextEvent
Select Case objLatestEvent.EventType 4) - Si la variable objLatestEvent renvoie 4 on vas à la Case 4 qui lance la calculatrice ( 1 c'est parce-qu'elle est visible ?, mais à quoi sert le false ??) et une MsgBox qui affiche un icone d'information et qui suspend tout jusqu’à ce que l'utilisateur réagisse et après on recommence la boucle .. :
Code:
Case 4
' Launch Calc
oShell.Run "Calc.exe", 1, False
MsgBox "Entering suspend, Calc started", _
vbInformation + vbSystemModal, "Suspend" 5) - Si la variable objLatestEvent renvoie 7 on lance le batch ( 0 veut dire qu'il est "invisible" ?, le false je ne sais pas peut-être désactive ne réponse de la part du programme ) puis on lance (en visible puisque 1) notepad et une MsgBox qui affiche un icône d'information et qui suspend tout jusqu’à ce que l'utilisateur réagisse et après on recommence la boucle .. :
Code:
Case 7
' To run a batch file hidden, you can do like this:
'oShell.Run """C:\My scripts\mybatch.bat""", 0, False
' Launch Notepad
oShell.Run "Notepad.exe", 1, False
MsgBox "Resuming from suspend, notepad started", _
vbInformation + vbSystemModal, "Suspend" 6) - Si la variable objLatestEvent renvoie 11 on affiche une MsgBox à laquelle on associe Ce qui est affiché dans la chaîne de caractère LatestEvent
Code:
Case 11
MsgBox "OEM Event happened, OEMEventCode = " _
& strLatestEvent.OEMEventCode 7) - Si la variable objLatestEvent renvoie 18 on affiche une MsgBox
Code:
Case 18
MsgBox "Resume Automatic happened" 8) - Fin de Select et de la boucle on repart au DoJ'ai du mal avec la partie 2) ( je sais il y a juste une ligne mais je ne la comprends pas entièrement ... ) et aussi avec les false à la fin de certaine ligne ...
Merci ( et désolé pour le pavé ),
Julien_1