J'ai un petit problème lorsque je veux mapper des lecteurs réseaux.
J'ai créé un script qui me permet de mapper des lecteurs réseaux en fonction de l'appartenance à un groupe AD de l'utilisateur. Jusque là pas de problème tout fonctionne bien.
J'ai ajouté une ligne qui me permet de supprimer un lecteur réseau, si celui-ci utilise la lettre que j'ai défini et qui ensuite mappe mon lecteur. De plus lorsque mon lecteur est mapper il est renommé selon le nom que je défini dans le script. Là tout fonctionne encore.
En revanche lorsque je décide de monter manuellement un lecteur (comme le feront mes users plus tard) le lecteur reprend le nom que j'ai défini dans mon script.
exemple: je monte via le script \\serveur1\partage1 et je renomme celui-ci "toto" lorsque je monte manuellement \\serveur2\partage2 (qui devrait s’appeler \\serveur2\partage2 normalement) celui-ci s’appelle "toto" également. Du coup tout mes lecteurs réseaux s'appelle "toto" maintenant.
Je ne vois pas du tout d'où peut venir ce problème, si quelqu'un a une idée je suis preneur car après de multiple recherche sur le net je ne trouve toujours pas de solution.
Voici le script en question:
ON ERROR RESUME NEXT
Serveur1 = "serveur1" Serveur2 = "serveur2"
set WshShell = CreateObject("WScript.Shell" ) Set WshNetwork = WScript.CreateObject("WScript.Network" ) DomainName=WshShell.ExpandEnvironmentStrings("%USERDOMAIN%" ) Set UserObj = GetObject("WinNT://" & DomainName & "/" & WshNetwork.username)
Dim UserGroups Dim GroupObj UserGroups="" For Each GroupObj In UserObj.Groups UserGroups=UserGroups & "[" & GroupObj.Name & "]" Next
if InGroup("Lecteur_Service_XXX" ) then WshNetwork.RemoveNetworkDrive "R:", True, True WshNetwork.MapNetworkDrive "R:","\\" & Serveur1 & "\nom_partage$" Set oShell = CreateObject("Shell.Application" ) oShell.NameSpace("R:" ).Self.Name = "TOTO" end if
Function InGroup(strGroup) InGroup=False If InStr(UserGroups,"[" & strGroup & "]" ) Then InGroup=True End If End Function
Merci pour votre aide
Message édité par thom-s20 le 27-01-2015 à 10:31:57
Marsh Posté le 27-01-2015 à 10:13:44
Bonjour,
J'ai un petit problème lorsque je veux mapper des lecteurs réseaux.
J'ai créé un script qui me permet de mapper des lecteurs réseaux en fonction de l'appartenance à un groupe AD de l'utilisateur.
Jusque là pas de problème tout fonctionne bien.
J'ai ajouté une ligne qui me permet de supprimer un lecteur réseau, si celui-ci utilise la lettre que j'ai défini et qui ensuite mappe mon lecteur.
De plus lorsque mon lecteur est mapper il est renommé selon le nom que je défini dans le script.
Là tout fonctionne encore.
En revanche lorsque je décide de monter manuellement un lecteur (comme le feront mes users plus tard) le lecteur reprend le nom que j'ai défini dans mon script.
exemple:
je monte via le script \\serveur1\partage1 et je renomme celui-ci "toto"
lorsque je monte manuellement \\serveur2\partage2 (qui devrait s’appeler \\serveur2\partage2 normalement) celui-ci s’appelle "toto" également.
Du coup tout mes lecteurs réseaux s'appelle "toto" maintenant.
Je ne vois pas du tout d'où peut venir ce problème, si quelqu'un a une idée je suis preneur car après de multiple recherche sur le net je ne trouve toujours pas de solution.
Voici le script en question:
ON ERROR RESUME NEXT
Serveur1 = "serveur1"
Serveur2 = "serveur2"
set WshShell = CreateObject("WScript.Shell" )
Set WshNetwork = WScript.CreateObject("WScript.Network" )
DomainName=WshShell.ExpandEnvironmentStrings("%USERDOMAIN%" )
Set UserObj = GetObject("WinNT://" & DomainName & "/" & WshNetwork.username)
Dim UserGroups
Dim GroupObj
UserGroups=""
For Each GroupObj In UserObj.Groups
UserGroups=UserGroups & "[" & GroupObj.Name & "]"
Next
if InGroup("Lecteur_Service_XXX" ) then
WshNetwork.RemoveNetworkDrive "R:", True, True
WshNetwork.MapNetworkDrive "R:","\\" & Serveur1 & "\nom_partage$"
Set oShell = CreateObject("Shell.Application" )
oShell.NameSpace("R:" ).Self.Name = "TOTO"
end if
Function InGroup(strGroup)
InGroup=False
If InStr(UserGroups,"[" & strGroup & "]" ) Then
InGroup=True
End If
End Function
Merci pour votre aide
Message édité par thom-s20 le 27-01-2015 à 10:31:57