Suppression de profils locaux sur des machines clientes via vbs!!!

champblanc49 Messages postés 4 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 25 novembre 2005 - 24 nov. 2005 à 11:15
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 - 25 nov. 2005 à 20:55
bonjour à tous, je cherche un ptit vbs que je mettrai via gpo à partir de mon serveur, qui puisse me permette de supprimer des dossiers d'un repertoire (c:\documents and settings\) sauf 2 dossiers de ce répertoire qui è là pour le bon fonctionnement de la connexion du users.

merci d'avance

10 réponses

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
24 nov. 2005 à 17:06
Bonjour à tous....jean-marc
Dans le titre de ce topic, il y a "Suppression de profiles locaux" mais
la question porte sur répertoire seulement ???
Ci-desous, exemple de suppression de répertoire selon le profil.
Dim Path, fso, f, f1, User, Users, Sup
Path = "c:\Documents and Settings"


Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(Path)
Set Users = f.SubFolders
For Each f1 in Users
User = User & vbCrLf & vbCrLf & f1.Name


Select Case f1.Name
Case "Administrateur" 'profil à ne pas supprimer
MsgBox "Le user Administrateur ne sera supprimé"
Case "All Users" 'profil à ne pas supprimer
Case "Default User" 'profil à ne pas supprimer
Case "LocalService" 'profil à ne pas supprimer
Case "NetworkService" 'profil à ne pas supprimer
Case "jean" 'profil à ne pas supprimer
Case Else
msgbox "Ce profil sera supprimé : " & f1.Name
Sup = Sup & vbCrLf & vbCrLf & f1.Name
'fso.DeleteFolder(f1.ShortPath) 'ATTENTION: ordre protégé car dangereous !!!
End Select
Next
msgbox "Liste de tous les profils (visibles et cachés)" & vbCrLf & vbCrLf & User
msgbox "Liste des profils supprimés" & vbCrLf & vbCrLf & Sup
Set fso = Nothing
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
24 nov. 2005 à 17:17
Bonjour à tous....jean-marc
Pour connaitre les profils
Dim network, computer, SAM, Item, msg
Set network = Wscript.CreateObject("WScript.Network")
computer=network.ComputerName
'wscript.echo "#Liste des utilisateurs et groupes de " & computer
set SAM=GetObject("WinNT://" & computer & ",computer")
for each Item in SAM
Classe=Item.Class
If Classe = "User" then
msg = msg + vbCrLf & Classe & chr(9) & Item.name
End if
next
msgbox "Liste des Utilisateurs : " & vbCrLf & msg
0
champblanc49 Messages postés 4 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 25 novembre 2005
24 nov. 2005 à 21:21
Merci pour ce code, mais quand je le mè dan un .vbs et que je le lance
en local, il me propose bien de supprimer tel et tel profil, mais une
fois le programme terminé et que je vais voir dans document and setting
rien n'a été supprimé.



Une idée???

ChampBlanc49
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
24 nov. 2005 à 21:59
Bonjour à tous....jean-marc

La 1ère ' protège la commande. Il suffit de l'enlever.
' sert pour insérer un commentaire donc pour proteger en test une commande.
'fso.DeleteFolder(f1.ShortPath) 'ATTENTION: ordre protégé car dangereous !!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
champblanc49 Messages postés 4 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 25 novembre 2005
25 nov. 2005 à 08:18
Bonjour,
J'ai supprimé la ligne 'fso.DeleteFolder(f1.ShortPath) 'ATTENTION: ordre protégé car dangereous !!!
et ca supprimé toujours rien.
Et autre détails est ce qu'il est possible d'enlever les message box sans foutre le programme en l'air, car je voudrais que ca fasse silencieusement

merci d'avance

ChampBlanc49
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
25 nov. 2005 à 16:23
Bonjour à tous....
Comme j'ai précisé dans le précédant topic
' sert pour du commentaire
Donc:
1) pour deleter les fichiers, remettre
'fso.DeleteFolder(f1.ShortPath)
2) pour ne pas afficher les msgbox, remplacer
msgbox par 'msgbox

Pour tester un script, les msgbox sont indispensables.
Après quand script testé, il suffit de mettre 'msgbox
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
25 nov. 2005 à 16:24
Bonjour à tous....jean-marc
remettre (enlever le ')
fso.DeleteFolder(f1.ShortPath)
0
champblanc49 Messages postés 4 Date d'inscription jeudi 24 novembre 2005 Statut Membre Dernière intervention 25 novembre 2005
25 nov. 2005 à 16:37
bon j'ai bien enlever le ' et quand je lance le .vbs il me sort

script : c:\Documents ans Settings\user\bureau\suppr profil.vbs
ligne 18
caract 4
erreur : permission refusée
code : 800A0046
Source : erreur d'éxécution M$ VBscript

ligne 18 carct 4 correpons à la ligne fso.DeleteFolder(f1.ShortPath) dans mon .vbs

????

ChampBlanc49
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
25 nov. 2005 à 20:50
Bonsoir,

Dans "c:\Documents and Settings", j'ai créé un folder "folder à supprimer" .
Activation de mon script, ce répertoire a bien été supprimé !!!
Certains folders sont protégés, heureuseusement, et il y a un send d'erreur sur ceux-ci.

Dim Path, fso, f, f1, User, Users, Sup
Path = "c:\Documents and Settings"


Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(Path)
Set Users = f.SubFolders
For Each f1 in Users
User = User & vbCrLf & vbCrLf & f1.Name


Select Case f1.Name
Case "Administrateur" 'profil à ne pas supprimer
'MsgBox "Le user Administrateur ne sera supprimé"
Case "All Users" 'profil à ne pas supprimer
Case "Default User" 'profil à ne pas supprimer
Case "LocalService" 'profil à ne pas supprimer
Case "NetworkService" 'profil à ne pas supprimer
Case "moi" 'profil à ne pas supprimer
Case Else
msgbox "Ce profil sera supprimé : " & f1.Name
Sup = Sup & vbCrLf & vbCrLf & f1.Name
fso.DeleteFolder(f1.ShortPath)
End Select
Next
'msgbox "Liste de tous les profils (visibles et cachés)" & vbCrLf & vbCrLf & User
'msgbox "Liste des profils supprimés" & vbCrLf & vbCrLf & Sup
Set fso = Nothing
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
25 nov. 2005 à 20:55
Bonsoir,

En relisant le Topic, oh!!!
Ne pas mettre un script vbs dans un répertoire susceptible d'être supprimé.
On en revient à couper la branche sur laquelle on est assis.
0
Rejoignez-nous