Bonjour à vous tous,

Avant de me lancer dans un function qui recupere tous les groupes et regarde si le user est dedans, j'ai cherché sur le site s'il n'existait un autre moyen.
et j'ai trouvé ça :
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
Public Function isMemberOf(ByVal cheminLdapUser As String, _
	                           ByVal monUsername As String, _
	                           ByVal monPassword As String) As ArrayList
 
		' Exemple de chemin LDAP : "CN=Administrateurs de l'entreprise,CN=Users,DC=monDomaine,DC=local"
 
        ' Instanciation la liste qui va contenir les groupes
        Dim maListeGroupes As New ArrayList
 
        Dim monUser As New DirectoryEntry("LDAP://" & cheminLdapUser, _
		                   monUsername, monPassword)
 
        ' Appel de la méthode "Groups" d'ADSI
        Dim mesGroupes As Object = monUser.Invoke("Groups")
 
        ' Récupération de la liste des groupes
        For Each unGroupe As Object In CType(mesGroupes, IEnumerable)
            Dim groupEntry As DirectoryEntry = New DirectoryEntry(unGroupe)
            maListeGroupes.Add(groupEntry.Name)
            MessageBox.Show(groupEntry.Name)
        Next
 
        Return maListeGroupes
 
    End Function
ça a l'air bien, mais j'ai un beau message sur la ligne "invoke":
Nom inconnu. (Exception de HRESULT : 0x80020006 (DISP_E_UNKNOWNNAME))
Merci pour votre aide.