Set Shell = WScript.CreateObject("WScript.Shell" )
Shell.Run("recupdate.cmd" )
set Shell = nothing
'On lit le fichier date.dat
Dim fso
'instanciation
Set FSO = CreateObject("Scripting.FileSystemObject" )
'on instance le fichier texte
Set Ftxt = FSO.OpenTextFile("date.dat" )
'on parcours chaque ligne du fichier texte
Dim datesauv
Do While Not Ftxt.AtEndOfStream
datesauv = Ftxt.Readline
Loop
'on ferme le fichier
Ftxt.Close
'on decoupe la date de sauvegarde en 3
Dim datesauvtab
datesauvtab = Split(datesauv, "/" )
'On recupere la date du jour
Dim Datejour
Datejour = DateValue(Now)
'on Coupe la date du jour en 3
Dim datetab
datetab = Split(Datejour, "/" )
'On calcul nbjour (nombre de jours entre la date de sauvagarde et la date du jour)
Dim nbjour
nbjour = datetab(0)-datesauvtab(0)
'On effectu les test sur les dates pour savoir si il faut sauvegarder ou pas.
If datetab(0)<=datesauvtab(0) Then
Call Copier
ElseIf nbjour>=7 then
Call Copier
ElseIf nbjour<7 Then
Rapport "pascopié"
End If
'Declaration des Subs
Sub copier
MsgBox "Votre dossier personnel Outlook va etre sauvegardé." & vbCrLf & "Veuillez ne pas lancer Outlook jusqu'au message de confirmation" & Chr(13) & "Merci. Jeremy", vbOKOnly+vbInformation, "Sauvegarde des mails"
'Tuer le processus Outlook.exe
Set shell = CreateObject("WScript.Shell" )
shell.run ("taskkill /IM Outlook.exe" )
set shell = nothing
'On lance la copie du fichier de mail
Set Shell = WScript.CreateObject("WScript.Shell" )
Shell.Run("copierfichier.cmd" )
set Shell = nothing
Dim fso
'instanciation
Set FSO = CreateObject("Scripting.FileSystemObject" )
'on instance le fichier texte
Set Ftxt = FSO.OpenTextFile("date.dat" )
'on parcours chaque ligne du fichier texte
Dim datesauv
Do While Not Ftxt.AtEndOfStream
datesauv = Ftxt.Readline
Loop
'on ferme le fichier
Ftxt.Close
'on place le fichier sur le serveur FTP
Set Shell = WScript.CreateObject("WScript.Shell" )
Set FSys = CreateObject("Scripting.FileSystemObject" )
Set MonFic = FSys.CreateTextFile(fichier)
With MonFic 'Pour écrire dans le fichier texte
.writeLine "Ets Caillaud - Jeremy Leherpeur" 'Mettre write pour ne pas sauter à la ligne
.writeline "Le " & DateValue(Now)
.writeLine "Sauvegarde éffectuée correctement"
.close
End With
'on met a jour la date de sauvegarde
Set MonFic = FSys.CreateTextFile("date.dat" )
With MonFic 'Pour écrire dans le fichier texte
.writeline DateValue(Now)
.close
End With
'on envoi le fichier date.dat mis a jour sur le serveur
Set Shell = WScript.CreateObject("WScript.Shell" )
Shell.Run("envoyerdate.cmd" )
set Shell = nothing
'on supprime le fichier date.dat en local
Dim fso
Set FSO = CreateObject("Scripting.FileSystemObject" )
Set Ftxt = fso.GetFile("c:\" ) 'Fichier origine
Ftxt.delete
MsgBox "La copie de votre Dossier Personnel a été effectuée correctement." & vbCrLf & "Vous Pouvez dès a présent utiliser Outlook" & Chr(13) & "Merci. Jeremy", vbOKOnly+vbInformation, "Sauvegarde des mails"
Else if test = "pascopié" Then
'on crée le fichier log du jour
Set FSys = CreateObject("Scripting.FileSystemObject" )
Set MonFic = FSys.CreateTextFile(fichier)
With MonFic 'Pour écrire dans le fichier texte
.writeLine "Ets Caillaud - Jeremy Leherpeur" 'Mettre write pour ne pas sauter à la ligne
.writeline "Le " & DateValue(Now)
.writeLine "Pas de sauvegarde"
.close
End With
End If
End If
End Sub
Je voudrai pouvoir transmettre des variable dans quand j'appel mes fichiers cmd. Comment faire?
PS: Petite infos dans mes CMD ce sont des commandes FTP avec FTP.exe qui apelle un fichier de commande externe. Comment faire pour que les variables arriaves aussi dans ces fichiers de commandes??
Message édité par Jeremy61 le 03-05-2006 à 10:14:34
Marsh Posté le 03-05-2006 à 10:10:44
Salut a tous.
Voila mon script VBS:
Je voudrai pouvoir transmettre des variable dans quand j'appel mes fichiers cmd.
Comment faire?
PS: Petite infos dans mes CMD ce sont des commandes FTP avec FTP.exe qui apelle un fichier de commande externe.
Comment faire pour que les variables arriaves aussi dans ces fichiers de commandes??
Message édité par Jeremy61 le 03-05-2006 à 10:14:34