Bonjour à tous,
J'ai une form qui permet de rechercher un utilisateur dans l'AD.
Il y a une richtextbox qui permet à l'utilisateur de saisir le login de l'utilisateur et une textbox qui affiche son nom complet.
Voici le code qui me permet de faire cela :

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
 
string ldapReq = @"(&(objectCategory=" + typeObject + ")(saMAccountName=" + objectName + "*))";
string ldapRoot = "LDAP://" + _txtBox5 + "/" + _txtBox4;
 
DirectoryEntry sroot = new DirectoryEntry(ldapRoot, _txtBox2, _txtBox3);
DirectorySearcher searcher = new DirectorySearcher(sroot, ldapReq, new string[] { "member" }, SearchScope.Subtree);
 
SearchResult sr = searcher.FindOne();
searcher.PropertiesToLoad.Add("cn");
 
if (sr != null)
{
       DirectoryEntry memberAd = new DirectoryEntry("LDAP://" + _txtBox5 + "/" + sr.Path, _txtBox2, _txtBox3);
       textBox3.Text = (string)memberAd.Properties["cn"][0];
}
 
else
{
       MessageBox.Show("Utilisateur non trouvé !", "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
Lorsque je saisis un nom de login (existant dans l'Active Directory) il le trouve, mais j'ai une erreur :
Erreur inconnue (0x80005000)
Je me demande si ma méthode de recherche est incorrecte, si la syntaxe est erronée, si ma requête LDAP est fausse.
Pouvez-vous m'aider s'il vous plaît ?
Merci, bonne journée à tous.