Bonjour tout le monde,
Je souhaiterais pouvoir obtenir de l'aide, sur l'écriture d'un script qui pourrait se lancer avant la mise en veille de l'ordinateur.
C'est à dire; Detection de la mise en veille, mise en attente de celle-ci; execution du script/programme; enfin lorsque celui-ci est finit mise en veille effective de l'ordinateur.
Et si possible avec un message box, laissant le choix à l'utilisateur d'executer le programme avant la mise en veille ou non.
But de ce script: Sauvegarde automatique avec Syncback script
Mon script:
► Afficher le texte
Code : Tout sélectionner
#NoTrayIcon
$programme = "C:\Program Files\SyncBack\SyncBack.exe"
$parametres = "-m " & chr(34) & "Save" & chr(34)
$parametres1 = "-m " & chr(34) & "Save1" & chr(34)
$parametres2 = "-m " & chr(34) & "Save2" & chr(34)
$parametres3 = "-m " & chr(34) & "Save3" & chr(34)
$os = @OSVersion
Dim $strComputer = "localhost", $message_title, $message_content
$oBJ = ObjGet ("winmgmts:\\" & $strComputer & "\root\cimv2")
$event = $oBJ.ExecNotificationQuery("Select * from Win32_PowerManagementEvent")
$ret = $event.NextEvent.EventType
Switch $ret
Case 4
$message_title = "Entering Suspend"
$message_content = "Indicates that the computer is about to enter the suspended state."
Case 7
$message_title = "Resume from Suspend"
$message_content = "Indicates that a ResumeSuspend message has been sent, enabling the computer to return to its regular power state."
Case 10
$message_title = "Power Status Change"
$message_content = "Indicates a change in the power status of the computer, such as a switch from battery power to AC, or from AC to an uninterruptible power supply"
Case 11
$message_title = "OEM Event"
$message_content = "Indicates that an Advanced Power Management (APM) BIOS has sent an OEM event"
Case 18
$message_title = "Resume Automatic"
$message_content = "Indicates that the computer has awakened in response to an event"
EndSwitch
if $os = "WIN_7" Then
ShellExecuteWait ($programme , $parametres)
ShellExecuteWait ($programme , $parametres1)
ShellExecuteWait ($programme , $parametres2)
ElseIf $os = "WIN_XP" Then
ShellExecuteWait ($programme , $parametres)
ShellExecuteWait ($programme , $parametres3)
EndIf
MsgBox (0, $message_title, $message_content)
Sachant que j'ai regardé cette solution; mais cela ne m'aide pas beaucoup... (
http://www.autoitscript.fr/forum/viewto ... +en+veille)
Merci pour votre aide
