我想知道如何从活动目录中获取所有计算机/机器/电脑的列表?
Im wondering how to get a list of all computers / machines / pc from active directory?
(试图让这个页面成为搜索引擎的诱饵,我会回复自己.如果有人有更好的回复,我会接受)
(Trying to make this page a search engine bait, will reply myself. If someone has a better reply il accept that )
如果您有一个非常大的域,或者您的域对每次搜索可以返回的项目数量进行了限制,您可能必须使用分页.
If you have a very big domain, or your domain has limits configured on how how many items can be returned per search, you might have to use paging.
using System.DirectoryServices; //add to references
public static List<string> GetComputers()
{
List<string> ComputerNames = new List<string>();
DirectoryEntry entry = new DirectoryEntry("LDAP://YourActiveDirectoryDomain.no");
DirectorySearcher mySearcher = new DirectorySearcher(entry);
mySearcher.Filter = ("(objectClass=computer)");
mySearcher.SizeLimit = int.MaxValue;
mySearcher.PageSize = int.MaxValue;
foreach(SearchResult resEnt in mySearcher.FindAll())
{
//"CN=SGSVG007DC"
string ComputerName = resEnt.GetDirectoryEntry().Name;
if (ComputerName.StartsWith("CN="))
ComputerName = ComputerName.Remove(0,"CN=".Length);
ComputerNames.Add(ComputerName);
}
mySearcher.Dispose();
entry.Dispose();
return ComputerNames;
}
这篇关于列出活动目录中的所有计算机的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!