L'intitulé est un peu non concordant avec mon objectif.
Voilà ce que je souhaite faire mais ça ne fonctionne pas.
je veux compresser le contenu d'un dossier D:\Sites dans C:\Sauvegardes\Sites\Sauvegardes.zip
Le première fois tout marche bien car Sauveragrdes.zip n'existe pas encore.
mais la deuxième fois, il m'écarse l'ancien. j'ai décidé alors de renommer l'ancien fichier zippé avant de faire la compression.
mais ça ne marche pas.
voiçi mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
'======================== Renommer la sauvegarde avant de compresser ===============================
Const ForReading = 1, ForWriting = 2, ForAppending = 8
 
Dim Source, Destination, MyHex, MyBinary, i
Dim oShell, oApp, oFolder, oCTF, oFile
Dim oFileSys
 
Source = "D:\Sites\"
Destination = "C:\Sauvegardes\Sites\Sauvegardes.zip"
 
 
Set FSO = CreateObject("Scripting.FileSystemObject" ) 
If FSO.FolderExists(Destination) Then 
	'Renommer le dossier existant
	FSO.REN "C:\Sauvegardes\Sites\Sauvegardes.zip" , "Sauvegardes_ancien.zip"
End If 
 
'=======================================================
 
'Compression du contenu du C:\sauvegardes
 
MyHex = _
Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
 
For i = 0 To UBound(MyHex)
    MyBinary = MyBinary & Chr(MyHex(i))
Next
 
Set oShell = CreateObject("WScript.Shell")
Set oFileSys = CreateObject("Scripting.FileSystemObject")
 
'Creation du zip
Set oCTF = oFileSys.CreateTextFile(Destination, True)
oCTF.Write MyBinary
oCTF.Close
Set oCTF = Nothing
 
Set oApp = CreateObject("Shell.Application")
 
Set oFolder = oApp.NameSpace(Source)
If Not oFolder Is Nothing Then _
    oApp.NameSpace(Destination).CopyHere oFolder.Items
 
wScript.Sleep 50
 
Set oFile = Nothing
Je souhaite garder toutes les sauvegardes anciennes quelque soit le nombre.
J'ai l'idée d'ajouter à chaque nouvelle fichier compressé un suffixe avec la date.
mais je n'arrive pas à la concrétiser.
Si quelqu'un a une idée de comment resoudre ce problème... Merci beaucoup

dadaapocalypse