Я пытаюсь добавить существующую группу в Local Administrators. Группа "ABC\Some Active Group"
существует. Я могу добавить это через графический интерфейс Windows, но мне нужно добавить его через код. Вот то, что я пытался до сих пор:Добавление группы к локальным администраторам
public static bool AddGroup(string machineName, string groupName)
{
bool ifSuccessful = false;
try
{
DirectoryEntry localMachine = new DirectoryEntry("WinNT://" + machineName);
DirectoryEntry admGroup = localMachine.Children.Find("administrators", "group");
//admGroup.Children.Add(groupName, "Group");
admGroup.Invoke("Add", groupName);
admGroup.CommitChanges();
ifSuccessful = true;
}
catch (Exception ex)
{
ifSuccessful = false;
//logging
Console.WriteLine(machineName + " ----------" + ex.Message);
}
return ifSuccessful;
}
и я называю это нравится:
AddGroup(Environment.MachineName, @"ABC\Some Active Group");
я получаю исключение, (его внутреннее исключение)
неверный путь к каталогу
I als О попытался добавить это нравится:
admGroup.Children.Add(groupName, "Group");
Но тогда я получил исключение:
объект Active Directory находится на пути WinNT: // ABC/MachineName/Администраторы не является контейнером
Я смог успешно получить всех пользователей и группы с помощью admGroup
, я не могу просто добавить его. Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно?
быстрый вопрос ... считаете ли вы поиск в Google ..? [DirectoryEntry Добавление локального пользователя] (http://stackoverflow.com/questions/10999499/adding-a-local-user-to-a-local-group-in-c-sharp) – MethodMan
@DJKRAZE, спасибо за комментарий , Да, я посмотрел на это, но это связано с добавлением пользователя, я пытаюсь добавить группу – CriketerOnSO
. Попробуйте эту ссылку, возможно, есть и полезный материал http://www.codeproject.com/Articles/18102/Howto- Почти-все-In-Active-Справочник-через-C – MethodMan