demseinadmin
Goto Top

VBS LDAP - Fehler beim Auslesen von Mitgliedern aus Gruppen

Hallo zusammen,

ich habe ein Problem bei einem VB Script.
Ich möchte aus allen Gruppen, die ich dem Script per Textdatei liefere, die Mitglieder auslesen.
Hier der Quelltext:
'Quelle festlegen  
RESULTFILE = "result.txt"  
SOURCEFILE = "ou_res.txt"  
OUNIT = "res"  
If FSO.FileExists(SOURCEFILE) Then
	Set LIST = FSO.OpenTextFile(SOURCEFILE, 1)
	Set RESULT = FSO.OpenTextFile(RESULTFILE, 2)
	Do While Not (LIST.AtEndOfStream)
		GROUP = LIST.ReadLine
		Set DOMAENE = GetObject("LDAP://...geheim...")  
		ANZ = 0
		On Error Resume Next
		ARRMEMBEROF = DOMAENE.GetEx("member")  
		ANZ = UBound(ARRMEMBEROF) + 1
		On Error GoTo 0
		If (ANZ >= 1) then
			RESULT.WriteLine(GROUP & ";" & ANZ)  
		End If
	Loop
	Set LIST = Nothing
End If
SOURCEFILE ist eine Textdatei mit allen Gruppennamen die ich auslesen möchte
RESULTFILE ist eine Textdatei, in welche der Gruppenname + die ANZahl der Mitglieder geschrieben werden soll.

Hierbei werden auch Gruppen ausgegeben, welche leer sind. Ist ja auch ganz klar, weil ich ihm in der Zeile
ANZ = UBound(ARRMEMBEROF) + 1
sage, dass die ANZahl immer >= 1 ist.
Wie bekomme ich es nun hin, dass mir nur die Gruppen ausgegeben werden, die auch wirklich Mitglieder haben? Oder besser: Bei allen leeren Gruppen steht auch tatsächlich eine "0" dahinter?

Danke euch.

Gruß
Simon

Content-ID: 128548

Url: https://administrator.de/contentid/128548

Ausgedruckt am: 25.11.2024 um 16:11 Uhr

76109
76109 03.11.2009 um 20:59:44 Uhr
Goto Top
Hallo DemseinAdmin!

Möglicherweise würde es helfen, wenn Du nach:
ARRMEMBEROF = DOMAENE.GetEx("member")   
den Test:
 If Err.Number = 0 Then ANZ  = UBound(ARRMEMBEROF) + 1 
einfügst. Der Err-Test muss selbstverständlich vor der Anweisung <On Error Goto 0> stehen.
Das Array ARRMEMBEROF bleibt bei einem Fehler unverändert bzw. enthält den Wert vom vorherigen Durchlauf.

Gruß Dieter
DemseinAdmin
DemseinAdmin 04.11.2009 um 09:49:40 Uhr
Goto Top
Hallo Dieter,

vielen Dank dafür, funktioniert!

Jetzt habe ich noch ein weiteres Problem, bei dem mir nicht so wirklich eine passende Lösung in den Kopf schießt:
Nun kann es ja sein, dass die Gruppen aus denen ich die Benutzer auslese, weitere Untergruppen haben, in welcher die eigentlichen Benutzer stecken. Die werden aber bisher nicht mit ausgelesen, da ich ja nur in der ersten Ebene suche.
Hat da jemand spontan eine gute Idee, wie ich das am besten handhaben kann?

Gruß
Simon
76109
76109 04.11.2009 um 10:33:59 Uhr
Goto Top
Hallo Simon!

Freut mich, wenn ich Dir zumindest teilweise helfen konnteface-smile. Dein anderes Problem entzieht sich leider meiner Kenntnisface-sad

Gruß Dieter
DemseinAdmin
DemseinAdmin 05.11.2009 um 11:00:21 Uhr
Goto Top
Kein Problem!

Dann setze ich das Thema mal auf gelöst und tüftel mal weiter. Wenn noch jemandem was einfällt, bitte nicht scheuen hier zu antworten.

Gruß
Simon