Şu anki OU'ların bir listesini Active Directory'den alabiliyorum. Bazı örnek kodları bir süredir çevrimiçi olarak inceledim, fakat O bunu işe yaramayacak gibi görünmüyor. // RootDSE Herhangi Fikirler:AD OU listesinin alınması
string defaultNamingContext;
DirectoryEntry rootDSE = new DirectoryEntry("LDAP://RootDSE");
defaultNamingContext = rootDSE.Properties["defaultNamingContext"].Value.ToString();
DirectorySearcher ouSearch = new DirectorySearcher(rootDSE, "(objectClass=organizationalUnit)",
null, SearchScope.Subtree);
MessageBox.Show(rootDSE.ToString());
try
{
SearchResultCollection collectedResult = ouSearch.FindAll();
foreach (SearchResult temp in collectedResult)
{
comboBox1.Items.Add(temp.Properties["name"][0]);
DirectoryEntry ou = temp.GetDirectoryEntry();
}
alıyorum hata sağlayıcı desteklemekte ve LDAP arama yapamazsınız Orada gelmez mi? Bu döndürülen arama sonuçlarının her biri için , onları bir açılan kutuya eklemek istiyorum. (çok zor olmamalı)
Yukarıdaki önerilerinizi kullanarak arama yapmayı denedim, gerçekten iyi bir fikir gibi görünüyor, ancak onu uygulamaya çalışan bir noob var. Ben varsayılan bir sorun olduğunu göremedim 'etki alanı', değişti, benim sorun bu etki alanı = System.DirectoryServices.DirectoryEntry, yerine LDAP: // ... onun yolu özelliği. –
Sadece bunu daha sonra bulanları ekleyeceğimi düşündüm. Server 2003 R2 ve daha önceki sürümlerde * değil * index 'objectClass', ancak 2008 ve sonrası yapılır. Cevaplara aykırı değil! Sadece yeni bilgi. Kaynak: http://msdn.microsoft.com/en-us/library/ms675095(v=vs.85).aspx – klyd