刚写出了获取自己计算机上名字为groupname的组下的所有用户名字。如下:
oLocalMachine = new DirectoryEntry("WinNT://" + Environment.MachineName);
DirectoryEntry AD = oLocalMachine.Children.Find(groupname, "group");
object obUsers = AD.Invoke("Members");
foreach (object ob in (IEnumerable)obUsers)
{
DirectoryEntry obUserEntry = new DirectoryEntry(ob);
userList.Add(obUserEntry.Name);
}但是现在是要获取其他计算机上的某个组下的所有用户名字!
研究了半天,不对,是好几天了。貌似我已经获得了一个那个计算机的DirectoryEntry 对象,但是根本不能像获取自己计算机上的方法那样。求高手出手呀!
oLocalMachine = new DirectoryEntry("WinNT://" + Environment.MachineName);
DirectoryEntry AD = oLocalMachine.Children.Find(groupname, "group");
object obUsers = AD.Invoke("Members");
foreach (object ob in (IEnumerable)obUsers)
{
DirectoryEntry obUserEntry = new DirectoryEntry(ob);
userList.Add(obUserEntry.Name);
}但是现在是要获取其他计算机上的某个组下的所有用户名字!
研究了半天,不对,是好几天了。貌似我已经获得了一个那个计算机的DirectoryEntry 对象,但是根本不能像获取自己计算机上的方法那样。求高手出手呀!
我写的是 LDAP://yu/cn=jiqi
当然我也写了帐号和密码。关键语句如下:
string strLink ="LDAP://yu/cn=jiqi";
oLocalMachine = new DirectoryEntry(strLink);
oLocalMachine.Username = "djq";
oLocalMachine.Password = "mima";
oLocalMachine.AuthenticationType = AuthenticationTypes.Secure;
directorySearch.Filter = "(&(objectClass=computer))";
SearchResultCollection results = directorySearch.FindAll();
foreach(SearchResult users in results)
{
DirectoryEntry de = users.GetDirectoryEntry();
MessageBox.Show(de.Name+" "+de.SchemaClassName+" ");
}
不知道我写的对不对,这样绑定到的是这个机器还是啥。