2
현재 WinNT 도메인에서 DirectorySearcher가 지원되지 않으므로 주어진 WinNT 도메인의 컴퓨터를 찾으려면 다음 코드를 사용하고 있습니다.DirectoryEntry 하위 항목을 열거하면 WinNT 도메인에서 20 개의 결과 만 반환하는 이유는 무엇입니까? C#
protected void ScanDomain(string domainName, bool isLocalDomain)
{
DirectoryEntry parentEntry = new DirectoryEntry();
if(isLocalDomain)
{
try
{
parentEntry.Path = "WinNT://" + domainName;
int numResults = 0;
foreach (DirectoryEntry childEntry in parentEntry.Children)
{
switch (childEntry.SchemaClassName)
{
case "Computer":
Debug.WriteLine(childEntry.Name);
numResults++;
break;
}
}
if (numResults == 0)
{
Debug.WriteLine("No results.");
}
}
catch (Exception ex)
{
Debug.WriteLine("Failed.");
}
}
else
{
//...
}
}
그러나이 방법을 사용하면 도메인에있는 것보다 컴퓨터가 더 많음을 알고 있지만 20 개의 컴퓨터 결과 만 수신합니다.
그래서 내가 왜이 사람인지 전혀 알지 못했습니까?
여기에 코드를 실행했는데 컴퓨터 결과 20 개가 넘었습니다. 어딘가에 제한이있을 수 있습니다. 우리의 도메인은 Windows Server 2000 (또는 아마도 2003?) 기능 수준입니다. – tjrobinson
흥미 롭습니다. 내 네트워크에 몇 가지 제한이있을 수 있습니다. – Avilan
컨테이너 인 모든 하위 개체를 검색해야한다고 생각합니다. 제대로 기억한다면 컴퓨터 계정이 그 자식 개체 안에 있으면 루트에 표시되지 않으며 WinNT 또는 LDAP 도메인에 상관없이 적용됩니다. (죄송합니다. 조금 애매합니다.이 일을한지 오래되었습니다 ...) –