tôi có hiện mã này,Active Directory Danh sách OU của
string defaultNamingContext;
DirectoryEntry rootDSE = new DirectoryEntry("LDAP://RootDSE");
defaultNamingContext = rootDSE.Properties["defaultNamingContext"].Value.ToString();
rootDSE = new DirectoryEntry("LDAP://" + defaultNamingContext);
//DirectoryEntry domain = new DirectoryEntry((string)"LDAP://" + defaultNamingContext);
DirectorySearcher ouSearch = new DirectorySearcher(rootDSE,"(objectCategory=Organizational-Unit)",
null, SearchScope.Subtree);
MessageBox.Show(rootDSE.Path.ToString());
try
{
SearchResultCollection collectedResult = ouSearch.FindAll();
foreach (SearchResult temp in collectedResult)
{
comboBox1.Items.Add(temp.Properties["name"][0]);
DirectoryEntry ou = temp.GetDirectoryEntry();
}
}
Khi tôi sử dụng trình gỡ lỗi tôi có thể thấy rootDSE.Path đó là Infact trỏ đến đúng nơi, trong trường hợp này DC=g-t-p,DC=Local
nhưng người tìm kiếm thư mục doesn' t tìm thấy bất kỳ kết quả nào. Có ai giúp được không?
OMG cái gì đó đơn giản như vậy, đá bản thân mình vì đã không cố gắng đó, sau vài tôi số giờ dùng thử và mã hóa lỗi: @ Tôi không nghĩ sản phẩm hiệu quả nhất của tôi gần đây ... –
Có vẻ như tôi đang thu thập các đối tượng tìm kiếm một cách chính xác để thêm chúng vào các mục của hộp Combo không? –
+1 Sau khi tự mình thử nghiệm và chuẩn bị viết câu trả lời, tôi đã đi đến kết luận chính xác. –