2

j'ai le code suivant pour convertir un distinguishedName à un sAMAccountName:"new DirectoryEntry (distinguishedName sous forme de chaîne)" ne fonctionne pas lorsque DN contient un "/"

Dim de As New DirectoryEntry("LDAP://" & stringDN) 
Return CType(de.Properties("samaccountname")(0), String) 

Il fonctionne très bien pour tous les DN I passe-le, sauf un. Nous avons un groupe AD sur notre domaine qui a un "/" dedans - appelons-le "Programmers/DBAs". Le DN de ce groupe est "Programmers/DBA, OU = Groupes d'utilisateurs, DC = mydomain, DC = local". Lorsque j'essaie d'utiliser ce DN comme stringDN ci-dessus, j'obtiens une exception COMException de "Unknown error (0x80005000)". Tous les autres groupes/utilisateurs dans mon domaine fonctionnent correctement, et j'ai dupliqué le problème sur notre domaine de test, où renommer le groupe pour qu'il ne contienne pas de "/" résout le problème. Cependant, je ne suis pas capable de le faire en production, donc je suis coincé. Puis-je échapper à ce «/» d'une façon ou d'une autre? Je dois croire qu'il existe une solution pour que je puisse obtenir les propriétés de ce groupe correctement.

Répondre

4

Avez-vous essayé de faire:

Dim de As New DirectoryEntry("LDAP://" & stringDN.Replace("/", "\/")) 
Return CType(de.Properties("samaccountname")(0), String) 
+0

Cela fait en effet le faire, si je devais un seul backslash: "\ /" – SqlRyan

+0

Désolé - C# isme. – tvanfosson

Questions connexes