VB.NET Wie kann ich mir ein Output ausgeben lassen?
Ich habe mir aus dem Netz eine Function geholt welche mir per LDAP alle Gruppen eines bestimmten Domainusers auflistet.
Allerdings habe ich hier das Problem das ich nicht begreife wie ich mir das Ergebnis in eine text-/list-/groupbox oder datagrid pipen kann.
Hier die Function:
Meinen function rufe ich folgendermaßen auf:
Danke für Tipps
LG Peacer
Allerdings habe ich hier das Problem das ich nicht begreife wie ich mir das Ergebnis in eine text-/list-/groupbox oder datagrid pipen kann.
Hier die Function:
Imports System.DirectoryServices
Imports System.DirectoryServices.ActiveDirectory
Public Function GetUserMemberOf(ByVal domain As String, ByVal username As String, ByVal password As String, Optional ByRef exeption As Exception = Nothing) As Collections.Generic.List(Of String)
Dim searcher As DirectorySearcher = Nothing
Dim colEntry As New Collections.Generic.List(Of String)
Try
searcher = New DirectorySearcher(New DirectoryEntry("LDAP://" & domain, username, password))
searcher.Filter = String.Concat("(&(objectClass=User) (sAMAccountName=", username, "))")
searcher.PropertiesToLoad.Add("MemberOf")
Dim result As SearchResult = searcher.FindOne
For i As Integer = 0 To result.Properties("MemberOf").Count - 1
Dim sProp As String = result.Properties("MemberOf")(i)
colEntry.Add(sProp.Substring(3, sProp.IndexOf(",") - 3))
Next
Catch ex As Exception
exeption = ex
Finally
searcher.Dispose()
End Try
Return colEntry
End Function
Meinen function rufe ich folgendermaßen auf:
GetUserMemberOf("domain.de", Manfred, 12345)
Danke für Tipps
LG Peacer
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 162491
Url: https://administrator.de/contentid/162491
Ausgedruckt am: 25.11.2024 um 10:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo Peacer!
Den Rückgabewert einer Funktion kannst du wie eine Variable behandeln. Also etwa:
In eine Datei schreiben müsste dann so gehen:
oder in der Kurzform:
Mathe172
Den Rückgabewert einer Funktion kannst du wie eine Variable behandeln. Also etwa:
Dim Rückgabewert as Collections.Generic.List(Of String) =GetUserMemberOf("domain.de", Manfred, 12345)
Dim Rückgabewert as Collections.Generic.List(Of String) =GetUserMemberOf("domain.de", Manfred, 12345)
Dim sw as new StreamWriter("AusgabeDatei.txt")
For each Zeile as String in Rückgabewert
sw.writeline(Zeile)
Next
Dim sw as new StreamWriter("AusgabeDatei.txt")
For each Zeile as String in GetUserMemberOf("domain.de", Manfred, 12345)
sw.writeline(Zeile)
Next
Mathe172
Hallo Peacer,
Die ToString Methode funktioniert für deine Zwecke auch nicht...Die gibt nur den Typ deiner Variable zurück.
Versuch mal:
Mathe172
Die ToString Methode funktioniert für deine Zwecke auch nicht...Die gibt nur den Typ deiner Variable zurück.
Versuch mal:
'Für das erste Element:
textbox2.text=Rückgabewert(0)
'Für alle:
For each Element as String in Rückgabewert
Textbox2.text &= Element & vbnewline
Next
'oder...
For i as integer=0 to rückgabewert.count - 1
Textbox2.text &= rückgabewert(i) & vbnewline
Next
'und wenn die leere Zeile wegsoll...
'For...
'....
'Next
With Textbox2
if .text<>"" andalso .text.last=vbnewline then .text=.text.remove(.text.length-1)
End With
Mathe172