Solved

Mimic AD in a TreeView through C#

Posted on 2008-06-18
3
1,761 Views
Last Modified: 2008-09-03
What I'm trying to do is query our Domain Controller for all of the Active Directory objects and mimic that view in a C# TreeView. The code I attached below ~works~ but it takes forever to load and hogs up system resources. Is there a simpler way to do this? I just need to make the TreeView look exactly like AD (Ou's, users' computer's, etc). Is there a better way to do this than below?


private static TreeNode RecursiveComputeLeafNodes(String ou, TreeNode nodes)

        {

            DirectoryEntry entry = new DirectoryEntry();

            if (ou.Equals(""))

                entry = new DirectoryEntry("LDAP://dc=corp,dc=pizzagalli,dc=com");

            else 

                entry = new DirectoryEntry(ou);

            //DirectorySearcher mySearcher = new DirectorySearcher(entry);

            //mySearcher.Filter = "(objectClass=computer)";

            foreach (System.DirectoryServices.DirectoryEntry child in entry.Children)

            {

                if (child.Properties.Count != 0)

                {

                    TreeNode newTreeNode = new TreeNode(child.Name.ToString().Remove(0,3));

                    nodes.Nodes.Add(RecursiveComputeLeafNodes(child.Path.ToString(), newTreeNode));

                }

                else

                {

                    String treeName = child.Name.ToString().Remove(0, 3);

                    nodes.Nodes.Add(new TreeNode(treeName));

                }

            }

            return nodes;

        }

Open in new window

0
Comment
Question by:invisiblekhaos2
3 Comments
 
LVL 83

Accepted Solution

by:
oBdA earned 400 total points
ID: 21816139
Probably; I'm not a programmer, but you might have a look at these for starters, as they might keep you from reinventing the wheel:

Directory Object Picker
http://msdn.microsoft.com/en-us/library/ms675899(VS.85).aspx

Using the Windows 2000/XP Object Selection Dialog
http://www.codeproject.com/KB/winsdk/bfobjectselection2.aspx?display=Print
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Restoring deleted objects in Active Directory has been a standard feature in Active Directory for many years, yet some admins may not know what is available.
This script can help you clean up your user profile database by comparing profiles to Active Directory users in a particular OU, and removing the profiles that don't match.
This tutorial will walk an individual through the process of transferring the five major, necessary Active Directory Roles, commonly referred to as the FSMO roles from a Windows Server 2008 domain controller to a Windows Server 2012 domain controlle…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now