Wednesday, January 21, 2015

System.Runtime.InteropServices.COMException error 0x80005000 working with DirectoryServices and LDAP path

I ran into this issue in VB.NET code used to remove an ADS user from certain groups.  One of the groups distinguishedName contained a '/' in the name (path). 

For example LDAP://CN=HRUser,OU=H/R,DC=fabrikam,DC=com where the DN CN=HRUser,OU=H/R,DC=fabrikam,DC=com contains the forward slash (OU=H/R).  This triggered a System.Runtime.InteropServices.COMException error 0x80005000 when executing the DirectoryEntry Remove method. 

To resolve this, use an escape character in the DN.  So once I had obtained the DN as a string, I then used strGroupDN = Replace(strGroupDN, "/", "\/") to get the escape '\' in before the '/'.  This resolved the error.

No comments: