Connextion à un annuaire LDAP (VBA vers VBS)

Connextion à un annuaire LDAP (VBA vers VBS) - VB/VBA/VBS - Programmation

Marsh Posté le 16-08-2007 à 16:20:51    

Bonjour,
 
Je cherche à convertir ce code VBA (surtout l'initialisation de la connextion ) qui fonctionne sous EXCEL, en VBS  
 
Il s'agit de se connecter à un annuaire LDAP qui est different du LDAP d'active directory de notre société (l'annuaire LDAP est plus complet en fait)
 
nb : TOTO est le nom de la société
 
'Initialisation de la connection
Set conn = New ADODB.Connection
conn.Provider = "ADsDSOObject"
conn.Open "ADs Provider"
mystr = "cn,mail,telephonenumber,ou,l,sitecode"
nbItems = UBound(Split(mystr, "," ))
 
For Each uid In liste
    Set RS = conn.Execute("<LDAP://annuaire.TOTO.com:389/o=TOTO/ou=users>;" & _
            "(&(objectClass=TOTODominoUser)(uid=" & uid & " ));" & mystr)
    Sheets("feuil1" ).Activate
     
For x = 0 To nbItems
        Cells(li, 2 + x).Value = "'" & RS.fields(x).Value
        If RS.fields(x) = Null Then
            Cells(li, 2 + x).Value = "'" & RS.fields(x).Value(0)
            If Len(RS.fields(x).Value(1)) > Len(RS.fields(x).Value(0)) Then
                Cells(li, 2 + x).Value = "'" & RS.fields(x).Value(1)
            End If
        End If
    Next
    li = li + 1
Next
 
j'ai essayé ca (en vbs donc) mais j'ai une erreur : Dépassement de la limite de taille pour cette requête.
 
Dim ADSIPath, objOU, objOUMember,filtre
ADSIPath = "LDAP://annuaire.TOTO.com:389/o=TOTO/ou=users"
Set objOU = GetObject(ADSIPath)
For Each objOUMember in objOU
 wscript.echo objOUMember.cn
 wscript.sleep(100)
Next
wscript.echo "Export terminé !"
 
Une connection 'classique' via ' Set objRDSE = GetObject("LDAP:" ) '//rootDSE'' ne m'interresse pas car
cela pointe sur notre AD et non pas sur l'annuaire
 
Merci pour vos idées !
 
 
 

Reply

Marsh Posté le 16-08-2007 à 16:20:51   

Reply

Marsh Posté le 16-08-2007 à 23:04:50    

Bon je réponds moi même
 
la solution est ici :
 
http://www.technos-sources.com/tut [...] on-40.aspx

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed