Во-первых, изменить ваш фильтр поиска, чтобы смотреть только для пользователей и не контактов:
(&(objectCategory=person)(objectClass=user)(sAMAccountName=BTYNDALL))
Вы можете перечислить все домены леса путем подключения к перегородке конфигурации и перечисления всех записей в разделах контейнер. К сожалению у меня нет кода C# прямо сейчас, но вот некоторые VBScript код, который я использовал в прошлом:
Set objRootDSE = GetObject("LDAP://RootDSE")
AdComm.Properties("Sort on") = "name"
AdComm.CommandText = "<LDAP://cn=Partitions," & _
objRootDSE.Get("ConfigurationNamingContext") & ">;" & _
"(&(objectcategory=crossRef)(systemFlags=3));" & _
"name,nCName,dnsRoot;onelevel"
set AdRs = AdComm.Execute
Из того, что вы можете получить имя и dnsRoot каждого раздела:
AdRs.MoveFirst
With AdRs
While Not .EOF
dnsRoot = .Fields("dnsRoot")
Set objOption = Document.createElement("OPTION")
objOption.Text = dnsRoot(0)
objOption.Value = "LDAP://" & dnsRoot(0) & "/" & .Fields("nCName").Value
Domain.Add(objOption)
.MoveNext
Wend
End With
Операции «С» и «Пока» выглядят отвратительными. Я думаю, что написал это давным-давно, и мне не нужно было обновлять его, так как он просто работал ... – Dscoduc
+1 и ответ. Это то, что я искал. Благодарю. – BuddyJoe
Спасибо, я рад, что это помогло ... – Dscoduc