psyche699
Messages postés19Date d'inscriptionmardi 21 novembre 2006StatutMembreDernière intervention10 octobre 2013
-
14 déc. 2012 à 12:22
Utilisateur anonyme -
17 déc. 2012 à 12:10
Bonjour a tous,
Je suis novice dans ce milieu et j'aurais besoins d'aide pour trouver une solution a mon petit probleme... que voici :
Je suis entrain de faire un .vbs qui me permettra de sauvegarder des mails via mozbackup.
voici mon code :
Msg = " ATTENTION : " & vbnewline & "LA SAUVEGARDE DES MAILS VA BIENTOT COMMENCER" & vbnewline & "MERCI DE FERMER MOZILLA THUNDERBIRD" &
vbnewline & vbnewline & "ETES VOUS PRET A SAUVEGARDER VOS MAILS?"
Boutons = vbYesNo + vbInformation
Titre = "Sauvegarde des Mails"
response = MsgBox(Msg, Boutons, Titre)
If response = vbYes Then
Dim shell, commande
Set shell = WScript.CreateObject("WScript.Shell")
commande="C:\Users\TBN.CIS-CARE\Desktop\MozBackup.bat"
shell.Run commande, 0,true
WScript.quit
Else
MsgBox "ARRET DE LA SAUVEGARDE DES MAILS." & vbnewline & "Prochaine sauvegarde le : a mettre la commande de datage du planificateur de
taches."
End If
J'aimerais insérer une commande qui vérifie dés que le programme (mozbackup) a terminé de faire son backup...
et dire a l'utilisateur que c'est terminer.
J'ai trouver ce code mais je ne veut pas le "KILL" :
'Fermeture des instances de APPLICATION_A_KILLER si ces applis sont ouvertes
Dim Prc() As Process = process.GetProcesses() 'on récupère la liste des processus de Windows: ATTENTION ce sont des tableaux
For x As Integer = 0 To UBound(Prc) 'on fait toute la liste dans une boucle
If Prc(x).ProcessName.ToUpper(New System.Globalization.CultureInfo("fr-FR", False)) = "APPLICATION_A_KILLER" Then 'Cette application nous embete ?
Prc(x).Kill() 'on la tue !!!!
End If
Next
Je veut juste qu'il verifie et une fois que le process a terminé, il fait un MSGBOX "Sauvegarde Terminé" ...
C'est possible ?
autre chose aussi, j'aimerais aussi récupérer une date dans le planificateur des taches ?? est ce possible ??
Voila merci d'avance...
Je continu a cherche pendant ce temps..
Tu peux tester si un process est actif de cette façon :
set service = GetObject ("winmgmts:")
for each Process in Service.InstancesOf ("Win32_Process")
If lcase(Process.Name) = "calc.exe" then
wscript.echo "calculette est active"
wscript.quit
End If
next
wscript.echo "calculette pas active"
Bon et avec une boucle pour surveiller en permanence c'est mieux :
do
WScript.Sleep 2000
set service = GetObject ("winmgmts:")
ok = false
for each Process in Service.InstancesOf ("Win32_Process")
If lcase(Process.Name) = "calc.exe" then
wscript.echo "calculette est active"
ok = true
End If
next
if not ok then
wscript.echo "calculette pas active"
wscript.quit
end if
loop
Ouvre un bloc note, colle le code, enregistre avec une extension vbs puis exécute le.
Pour tester l'exemple, démarre la calculette windows, exécute le vbs puis ferme la calculette.
wscript.Sleep 2000 -> met la boucle do/loop en pause pendant 2000 millisecondes.
Vous n’avez pas trouvé la réponse que vous recherchez ?