' Efface les fichiers dans les répértoires destinations et ' copie les fichiers situés dans Source dans les répertoires
' destinations
On Error Resume Next
' Défini quelques variables
strSourceDir = "Source"
aryDestDirs = Array( _
"01" , _
"02" , _
"03" , _
"04" , _
"05" , _
"06" , _
"07" , _
"08" , _
"09" , _
"10" , _
"11" , _
"12" _
)
' Affiche un message
MsgBox "Les répertoires vont être initialisés"
Set objFSO = CreateObject("Scripting.FileSystemObject" )
Set objCurrentFolder = objFSO.GetFolder("." )
' détermine la longueur du chemin
intLength = Len(objCurrentFolder.Path) - Len(objCurrentFolder.Name)
' extrait le chemin de base
strBasePath = Left(objCurrentFolder.Path , intLength)
' Efface les fichiers dans les répertoires de destination
For i = LBound(aryDestDirs) To Ubound(aryDestDirs)
Set objAuxFolder = objFSO.GetFolder(strBasePath & aryDestDirs(i))
' Boucle sur les sous répertoires
For Each Item In objAuxFolder.SubFolders
objFSO.DeleteFile Item.Path & "\*.*", True
' Traite le cas des dossiers My Picture et My Music
strName = Trim(LCase(CStr(Item.Name)))
If InStr(strName, "my picture" ) = 0 AND _
InStr(strName, "my music" ) = 0 Then
objFSO.DeleteFolder Item.Path, True
Else
Set objMyFolder = objFSO.GetFolder(Item.Path)
For Each MySF In objMyFolder.SubFolders
objFSO.DeleteFolder MySF.Path, True
Next
Set objMyFolder = Nothing
End If
Next
objFSO.DeleteFile objAuxFolder.Path & "\*.*", True
Set objAuxFolder = Nothing
Next
' Copie les fichiers du répertoire source vers la destination
For i = LBound(aryDestDirs) To Ubound(aryDestDirs)
objFSO.CopyFolder strBasePath & "Source", strBasePath & aryDestDirs(i), True
Next
' Efface les fichiers init.vbs dans les répertoires de destination
For i = LBound(aryDestDirs) To Ubound(aryDestDirs)
Set objAuxFolder = objFSO.GetFolder(strBasePath & aryDestDirs(i))
objFSO.DeleteFile objAuxFolder.Path & "\init.vbs", True
objFSO.DeleteFile objAuxFolder.Path & "\delete.vbs", True
Set objAuxFolder = Nothing
Next
' Libère la mémoire
Set objCurrentFolder = Nothing
Set objFSO = Nothing
' Affiche un message de confirmation
MsgBOX "Les dossiers ont été initialisés avec le contenu du dossier source" |