Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VB.NET Wie kann ich mir ein Output ausgeben lassen?

Frage Entwicklung Visual Studio

Mitglied: Peacer

Peacer (Level 1) - Jetzt verbinden

11.03.2011 um 14:22 Uhr, 5511 Aufrufe, 3 Kommentare

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:

01.
Imports System.DirectoryServices 
02.
Imports System.DirectoryServices.ActiveDirectory 
03.
 
04.
 
05.
    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) 
06.
        Dim searcher As DirectorySearcher = Nothing 
07.
        Dim colEntry As New Collections.Generic.List(Of String) 
08.
 
09.
        Try 
10.
            searcher = New DirectorySearcher(New DirectoryEntry("LDAP://" & domain, username, password)) 
11.
            searcher.Filter = String.Concat("(&(objectClass=User) (sAMAccountName=", username, "))") 
12.
            searcher.PropertiesToLoad.Add("MemberOf") 
13.
 
14.
            Dim result As SearchResult = searcher.FindOne 
15.
            For i As Integer = 0 To result.Properties("MemberOf").Count - 1 
16.
                Dim sProp As String = result.Properties("MemberOf")(i) 
17.
                colEntry.Add(sProp.Substring(3, sProp.IndexOf(",") - 3)) 
18.
            Next 
19.
 
20.
        Catch ex As Exception 
21.
            exeption = ex 
22.
 
23.
        Finally 
24.
            searcher.Dispose() 
25.
        End Try 
26.
 
27.
        Return colEntry 
28.
 
29.
    End Function
Meinen function rufe ich folgendermaßen auf:

01.
GetUserMemberOf("domain.de", Manfred, 12345)
Danke für Tipps

LG Peacer
Mitglied: mathe172
11.03.2011 um 15:48 Uhr
Hallo Peacer!

Den Rückgabewert einer Funktion kannst du wie eine Variable behandeln. Also etwa:
01.
Dim Rückgabewert as Collections.Generic.List(Of String) =GetUserMemberOf("domain.de", Manfred, 12345)
In eine Datei schreiben müsste dann so gehen:
01.
Dim Rückgabewert as Collections.Generic.List(Of String) =GetUserMemberOf("domain.de", Manfred, 12345) 
02.
Dim sw as new StreamWriter("AusgabeDatei.txt") 
03.
For each Zeile as String in Rückgabewert 
04.
   sw.writeline(Zeile) 
05.
Next
oder in der Kurzform:
01.
Dim sw as new StreamWriter("AusgabeDatei.txt") 
02.
For each Zeile as String in GetUserMemberOf("domain.de", Manfred, 12345) 
03.
   sw.writeline(Zeile) 
04.
Next
Mathe172
Bitte warten ..
Mitglied: Peacer
11.03.2011 um 17:42 Uhr
Hi Mathe172

So richtig will das noch nicht. Ich habe es folgendermaßen ausprobiert.

01.
Dim Rückgabewert As System.Collections.Generic.List(of String) = GetUserMemberOf("domain.de", Manfred, 12345) 
02.
   		textbox2.Text = Rückgabewert.ToString
da bringt er mir das:

System.Collections.Generic.List`1[System.String]



LG Peacer
Bitte warten ..
Mitglied: mathe172
11.03.2011 um 19:23 Uhr
Hallo Peacer,

Die ToString Methode funktioniert für deine Zwecke auch nicht...Die gibt nur den Typ deiner Variable zurück.

Versuch mal:
01.
'Für das erste Element: 
02.
textbox2.text=Rückgabewert(0) 
03.
'Für alle: 
04.
For each Element as String in Rückgabewert 
05.
Textbox2.text &= Element & vbnewline 
06.
Next 
07.
'oder... 
08.
For i as integer=0 to rückgabewert.count - 1 
09.
Textbox2.text &=  rückgabewert(i) & vbnewline 
10.
Next 
11.
'und wenn die leere Zeile wegsoll... 
12.
'For... 
13.
'.... 
14.
'Next 
15.
With Textbox2 
16.
if .text<>"" andalso .text.last=vbnewline then .text=.text.remove(.text.length-1) 
17.
End With
Mathe172
Bitte warten ..
Ähnliche Inhalte
Webentwicklung
gelöst HTML Output in eine txt Datei mit VisualBasicScript (2)

Frage von coca22COCA zum Thema Webentwicklung ...

Basic
gelöst Mit vb.net PDF in Word-Dok einfügen (10)

Frage von ahstax zum Thema Basic ...

Batch & Shell
gelöst Bash Nur Zahlen ausgeben regex (11)

Frage von Marabunta zum Thema Batch & Shell ...

Visual Studio
Srv records aus dem dns abfragen unter vb.net (14)

Frage von Herbrich19 zum Thema Visual Studio ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (26)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (16)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Windows Server
DC virtualisieren + wie sichern (SingleDC-Environment) (11)

Frage von KMUlife zum Thema Windows Server ...