Requin |
Neo_t3 a écrit a écrit :
Voila je suis en train de me faire un fichier *.bat qui à chaque demarrage s'execute et supprime le contenu de mon dossier relatif à mon compte, tempory internet files, temp. Mais la ou je bloque c'est à cette ligne :
C:\Docume~1\Neo\... ensuite il faut aller dans le dossier nommé Local settings mais en nom DOS ça donne quoi ? Merci P.S : MOn .BAT =
del C:\Docume~1\Neo\Local Settings\Temporary Internet Files\*.*
del C:\Docume~1\Neo\Local Settings\Temp\*.*
|
http://msdn.microsoft.com/
Ensuite tu recherche dans la library Windows Scripting Host (WSH). Il y a l'objet Shell qui te permetteras de faire des manipulations sur les fichiers. Avec ces scripts tu pourras faire bien plus de choses qu'avec des batchs.
Voici un exemple de script (en VBScript, tu pourrais aussi utiliser JScript ou PERLScript) :
Code :
- ' Efface les fichiers dans les répértoires destinations
- On Error Resume Next
- ' Défini quelques variables
- aryDestDirs = Array( _
- "01" , _
- "02" , _
- "03" , _
- "04" , _
- "05" , _
- "06" , _
- "07" , _
- "08" , _
- "09" , _
- "10" , _
- "11" , _
- "12" _
- )
- MsgBox "Les répertoires vont être vidés de leur contenu"
- 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
- ' Libère la mémoire
- Set objCurrentFolder = Nothing
- Set objFSO = Nothing
- ' Affiche un message de confirmation
- MsgBOX "Les dossiers ont été vidés de leur contenu"
|
Ce code sert à effacer le contenu des répertoires "my documents" des utilisateurs 01 à 12 (en préservant "My Music" et "My Picture", situé un répertoire au dessous du répertoire courant d'une salle de cours informatiques, mes répertoires s'appelles 01 à 12 et le support des noms longs n'est pas un problème, tu peux le modifier comme bon te semble.
Je te conseille un éditeur comme Macromedia Homesite pour avoir le code en couleur. [jfdsdjhfuetppo]--Message édité par Requin le 27-05-2002 à 21:48:32--[/jfdsdjhfuetppo] |