Καλημέρα ....δουλεύω σε μια εταιρία που σου ζητάει κάτι σήμερα το οποίο το θέλει ... χθές.
Παρουσιάστηκε λοιπόν η ανάγκη να μεταφέρουμε στην δική μας εφαρμογή όλο το structure του Active Directory (Organization Units και Users).
Οσον αφορά τους Users τα Groups και τα Services με τον παρακάτω κώδικα είναι Ok
θέλω όμως και τα organizational units του κάθε χρήστη (τα τμήματα που ανήκουν)
Any Idea ???
Ο κώδικας χρησιμοποιηεί ένα Treeview με όνομα viewPC και ένα Directory Entry
με όνομα entryPC
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim users As New TreeNode("Users")
Dim groups As New TreeNode("Groups")
Dim services As New TreeNode("Services")
viewPC.Nodes.AddRange(New TreeNode() {users, groups, services})
Dim child As System.DirectoryServices.DirectoryEntry
For Each child In entryPC.Children
Dim newNode As New TreeNode(child.Name)
Select Case child.SchemaClassName
Case "User"
users.Nodes.Add(newNode)
Case "Group"
groups.Nodes.Add(newNode)
Case "Service"
services.Nodes.Add(newNode)
End Select
AddPathAndProperties(newNode, child)
Next
End Sub
Private Sub AddPathAndProperties(ByVal node As TreeNode, ByVal entry As System.DirectoryServices.DirectoryEntry)
node.Nodes.Add(New TreeNode("Path: " & entry.Path))
Dim propertyNode As New TreeNode("Properties")
node.Nodes.Add(propertyNode)
Dim propertyName As String
Dim oneNode As String
For Each propertyName In entry.Properties.PropertyNames
Try
oneNode = propertyName & ": " & _
CType(entry.Properties(propertyName)(0), String)
Catch
oneNode = propertyName & ": " & _
"No text representation."
End Try
propertyNode.Nodes.Add(New TreeNode(oneNode))
Next
End Sub
Seretis Isidoros
----------------------
Join the army
Travel the world,
Meet interesting people
And kill them.