je voulais utiliser vbs car je souhaite installer des imprimantes reseau en meme tps.
pour ça, tu fais un autre script.
c'est à mon avis, mieux de séparer les fonctionnalités dans des scripts differents. C'est juste pour une histoire de lisibilité.
Biloulou
La réponse de dahlo me parait la meilleure et la plus rafinée.
Il list les drives mappés, boucle dans la collection et les enleve. Que demander de plus :)
moicalex
je voulais utiliser vbs car je souhaite installer des imprimantes reseau en meme tps.
moicalex
si c pour utiliser un .bat je ferai plutot :
Citation :
NET USE * /DELETE /Y
i'm philou
pourquoi ne pas utiliser un .bat avec dedans
net use /delete F:
net use /delete G:
net use /delete H:
...
à distribuer via GPO à la fermeture de session.
dahlo
Donc, si j'ai bien compris, distribue le script en stratégie d'ouverture de session...
moicalex
Merci c'est parfait.
Par contre cela m'nelève que les lecteurs reseau ayant été créé par un script, pas ceux créer par l'utilisateur.
dahlo
- Tu as tout ce qu'il te faut ici ... - Polarise toi sur la méthode EnumNetworkDrives
- Pour comprendre la structure regarde là ... - Ce qu'il faut rajouter, puisque tu veux un offset (G: ), c'est une condition dans la boucle For sur la lettre du lecteur.
En conséquence:
Citation :
On Error Resume Next
Start="g:" 'inclu
Set objNetwork = CreateObject("Wscript.Network" )
Set colDrives = objNetwork.EnumNetworkDrives
For i = 0 to colDrives.Count-1 Step 2
If Asc(coldrives.item(i)) >= Asc(Ucase(Start)) then
objNetwork.RemoveNetworkDrive colDrives.Item(i)
Wscript.Echo "Le partage (" & coldrives.item(i) & " ) a été éffacé."
end if
Next
Set colDrives = Nothing
Set objNetwork = Nothing
Note: - La condition pourrait porter sur le chemin UNC du partage, voir sur les deux...
- C'est pas vraiment la bonne catégorie plus spécifique...
moicalex
bon j'ai un peu avancé.
Je vais essayé d'etre + clair :)
Voici le code que j'utilise pour mapper un driver :
Citation :
Dim WshNetwork, fso
Set WshNetwork = WScript.CreateObject("WScript.Network" )
Set fso = CreateObject("Scripting.FileSystemObject" )
If fso.DriveExists("Y:" ) Then
WshNetwork.RemoveNetworkDrive "Y:"
Else
WshNetwork.MapNetworkDrive "Y:", "\\server\commun"
End If
je voudrai rajouter un test pour démapper tout autre lettre presente sur le pc en local a partir de "G:" par exemple.
Merci
moicalex
Pas d idée ;) ?
moicalex
Bonjour,
J'aimerai supprimer tout les lecteur reseau (par exemple ceux créer par l'utilisateur) avant d'en remapper d'autres (les officiels lol).
Citation :
Dim WshNetwork
Set WshNetwork = WScript.CreateObject("WScript.Network" )
WshNetwork.RemoveNetworkDrive "Y:"
WshNetwork.MapNetworkDrive "Y:", "\\vermeer\commun"
Le probleme c'est que l'on peut supprimer que les lecteurs existants.
Autres question, il y a t il un site avec des exemples précis ?