torstenv 10 Geschrieben 30. September 2004 Melden Teilen Geschrieben 30. September 2004 Hi! Ich muss aus einer VB Anwendung heraus alle Objekte innerhalb des Active Directories finden, deren Klasse "Computer" "Group" oder "User" ist. Und das unabhängig vom Ort des Objektes. Bisher habe ich das realisiert, indem ich rekursiv durch alle "Unterverzeichnisse" des AD gebrowsed bin und dort nach Objekten der entsprechenden Klasse gesucht habe: Private Sub UpdateADUsers(ByVal Ort As String, Optional Recoursive As Boolean) [...] Set OU = GetObject("LDAP://" & Ort) For Each Item In OU If Item.Class = "container" Or Item.Class = "builtinDomain" Or Item.Class = "organizationalUnit" Then Call UpdateADUsers(Item.Name & "," & Ort, True) ElseIf Item.Class = "computer" Then [...] ElseIf Item.Class = "group" Then [...] ElseIf Item.Class = "user" Then [...] end if [...] end sub Leider ist diese Methode sehr langsam, bei ADs mit 350 PCs und ungefähr genauso vielen Usern dauert es fast 2 Minuten, bis die Rekursion durch ist und ich alle Infos habe, die ich brauche. Da ich das bei jedem Programmstart ausführen muss, um immer die aktuellen Infomrationen zu haben, suche ich nach einem schnelleren Weg. Gibt es LDAP:// oder WINNT:// Funktionen, die einem einfach eine Liste von Computern, Usern oder Gruppen liefert, egal wo sie im AD liegen, ohne dass ich das manuell durchforsten muss? T. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.