正在向本地管理员添加组
本文关键字:管理员 添加 | 更新日期: 2023-09-27 18:26:45
我正在尝试在本地管理员中添加一个现有组。组"ABC'Some Active Group"
存在。我可以通过Windows GUI添加它,但我需要通过代码添加它。以下是我迄今为止所尝试的:
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");
我得到了异常(它是一个内部异常)
传递了一个无效的目录路径名
我还试着添加它,比如:
admGroup.Children.Add(groupName, "Group");
但后来我得到了一个例外:
位于路径中的Active Directory对象WinNT://ABC/MachineName/Administrators不是容器
我已经能够成功地获得admGroup
的所有用户和组,我不能只添加一个。有人能告诉我我做错了什么吗?
您需要像这样调用AddGroup
AddGroup(Environment.MachineName,"WinNT://"+Environment_MachineName+"/Some Active Group");