3

我想枚举域中的所有 DC(当前用户或计算机是其中的成员,也不在同一个林中)。

我发现了这个不错的方法

Domain domain = Domain.GetCurrentDomain();
foreach (DomainController dc in domain.DomainControllers)
   ...

但是,我无法弄清楚如何进行远程连接以获取正确的域上下文。

连接方式

DirectoryEntry child = new DirectoryEntry("LDAP://" + server + "/" + objectDn, userName, password);

效果很好。但我不知道如何把它放在一起。

4

1 回答 1

9
using System.DirectoryServices.ActiveDirectory;

…………
_

DirectoryContext dc = new DirectoryContext(DirectoryContextType.DirectoryServer, "ip", "user", "pwd"); //change parameters here
Forest forest = Forest.GetForest(dc);    
Console.WriteLine(forest.Domains.Count); 

以上对我有用(给出正确的域数)

我显然正在使用网络管理员帐户进行测试。希望这可以帮助

于 2012-03-06T10:49:24.767 回答