Bonjour,

j'essaie de développer un petit programme en VB (.net 2005) qui se connetera sur un arbre x500 en ldap (pas l'AD) et fera des recherches.

pour le moment, j'arrive à m'y connecter (si je mets un mauvais mot de passe, j'ai un message d'erreur de connection, donc c'est bon).

par contre, lors de la recherche, j'ai une erreur du type "table does not exist".

je vous donne le code....

toute aide est biensur la bienvenue

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
        Const ADS_SCOPE_SUBTREE = 2
        Dim objConnection, objCommand, objRecordSet
 
        Dim strPath
        Dim strUsername
        Dim strPassword
        Dim adsNamespaceLDAP
        Dim adsMyObject
        strPath = "LDAP://monserveur/o=cmp"
        strUsername = "cn=admin,o=cmp"
        strPassword = "cmppass"
        adsNamespaceLDAP = GetObject("LDAP:")
        adsMyObject = adsNamespaceLDAP.OpenDSObject(strPath, strUsername, strPassword, 0)
 
        objConnection = CreateObject("ADODB.Connection")
        objCommand = CreateObject("ADODB.Command")
        objConnection.Provider = "ADsDSOObject"
        objConnection.Open("Active Directory Provider")
        objCommand.ActiveConnection = objConnection
        objCommand.commandText = "<LDAP://monserveur/o=cmp>;(sn=tintin);sn;subTree"
 
        objCommand.Properties("Page Size") = 1000
        objCommand.Properties("Timeout") = 30
        objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
        objCommand.Properties("Cache Results") = False
        objRecordSet = objCommand.Execute
        objRecordSet.MoveFirst()
        Do Until objRecordSet.EOF
            results.Text = objRecordSet.Fields("Name").Value & Chr(13) & Chr(10)
            'Wscript.Echo "Computer Name: " & objRecordSet.Fields("Name").Value
            'Wscript.Echo "Location: " & objRecordSet.Fields("Location").Value
            objRecordSet.MoveNext()
        Loop
 
    End Sub