Hop la, vala le script retravaillé, il fonctionne (me mappe mes deux lecteur reseau ^^)
' VBScript source code
Dim objRootLDAP, objGroup, objUser, objOU, objmemberOf, objNetwork, objSysInfo
Dim strOU, strUser, strDNSDomain, strLDAP, List, objADSysInfo, arr, intlength, intNamelength, strGroupName, strUserPath
Dim grp(50)
Dim arrgroup(50)
Dim getgroup
Dim i As Integer
Dim j As Integer
' Commands to bind to AD
objRootLDAP = GetObject("LDAP://RootDSE" )
objNetwork = CreateObject("Wscript.Network" )
'trouver le DN de l'utilisateur
objADSysInfo = CreateObject("ADSystemInfo" )
strUser = objADSysInfo.UserName
objUser = GetObject("LDAP://" & strUser)
'Recup liste grp
Const E_ADS_PROPERTY_NOT_FOUND = &H8000500D
objSysInfo = CreateObject("ADSystemInfo" )
strUserPath = "LDAP://" & objSysInfo.UserName
objUser = GetObject(strUserPath)
objmemberOf = objUser.GetEx("memberOf" )
If Err.Number = E_ADS_PROPERTY_NOT_FOUND Then
MsgBox("Aucun groupes" )
Else
i = 0
For Each objGroup In objmemberOf
objGroup = Mid(objGroup, 4, 330)
arrGroup = Split(objGroup, "," )
' strList = strList & arrGroup(0) & vbcr
grp(i) = arrgroup(0)
'MsgBox grp(i)
i = i + 1
Next
i = i - 1
ReDim Preserve grp(i)
getgroup = grp
End If
'Connecter un lecteur en fonction du groupe.
For j = LBound(getgroup) To UBound(getgroup)
Select Case getgroup(j)
Case "MAIRIE" 'changer grpname par nom du groupe
objNetwork = CreateObject("Wscript.Network" )
objNetwork.MapNetworkDrive("X:", "\\server\bleh\blah" )
Case "Smtp_Internet" 'changer grpname par nom du groupe
objNetwork = CreateObject("Wscript.Network" )
objNetwork.MapNetworkDrive("Z:", "\\server\bleh" )
End Select
Next
Plus qu'a ajouter l'unmapping (ca se dit ?
) des lecteurs au cas ou