2013-07-04 2 views
0

Когда я пытаюсь добавить ADUser к ADgroup, я получаю сообщение об ошибке (0x80005000)DirectoryServices Получить Ошибка 0x80005000 при использовании специального символа '/'

addUserToGroup ("ПользовательА", "CB HQ (P & D)"); < - Он работает, чтобы добавить пользователя в группу

addUserToGroup ("userb", "CB HQ (P/D)"); , когда доступ к программе для --Если (dirEntry.Properties [ "член"] Содержит (UserPath!).) - выбросит ошибку (0x80005000)


static void addUserToGroup(String loginName, String groupName){ 
string groupPath = String.Format("{0}CN={1},OU={2},{3}", LDAPStr, groupName, OUStr, DCStr); 
     string userPath = getUserPathByLogin(loginName); 
     try 
     { 
      if (!String.IsNullOrEmpty(userPath)) 
      { 
       DirectoryEntry dirEntry = new DirectoryEntry(groupPath, ADUserName, ADPassword); 
       if (!dirEntry.Properties["member"].Contains(userPath)) 
       { 
        dirEntry.Properties["member"].Add(userPath); 
        dirEntry.CommitChanges(); 
       } 
      } 
     } 
     catch (Exception ex) 
     { 


     } 
+0

Исправлено: В моем случае, просто repleace, чтобы сгруппировать имя с использованием кодирования. groupName = groupName.Replace ("/", "\\ /"); – HateBear

+0

Опубликуйте свое решение как ответ на свой вопрос, а не редактируйте его в вопрос. Затем, когда вы в состоянии, принимайте это как правильный ответ. :) – doppelgreener

ответ

0

Fixed В моем случае , Просто repleace, чтобы сгруппировать имя с кодированием.

groupName = groupName.Replace ("/", "\ /");

Смежные вопросы