| |

VB.NET - Ein- und UmsteigerFTP Verzeichnisstruktur/Ordnerstruktur in TreeView darstellen | |  | Autor: Masterman | Datum: 10.12.07 15:44 |
| Hallo zusammen!
Es geht um folgendes:
Momentan schreibe ich einen neuen Funktionsteil für ein bestehendes Programm. Der neue Teil soll aus einer Treeview und einer Listview bestehen. In der Treeview soll die Verzeichnisstruktur eines beliebigen FTP-Servers dargestellt werden können. Die Ordner/Dateien können dort ausgewählt werden und per Button/Drag Drop (Pfad) in die Listview kopiert werden.
Das woran ich jetzt steckenbleibe ist, wie ich die Verzeichnisstruktur des FTP-Servers schnell und einfach in die TreeView bekomme.
Momentan löse ich das mit Schleifen und direkter Abfrage. Das dauert aber erstens zu lange, ist ungenau (Ich durchlaufe das ganze nur 3 Mal --> Für den einen Server passt das, der andere hat eine tiefere Struktur... ) und scheint mir nicht die beste Lösung.
Gibt es ein Directory Listing, in dem die komplette Struktur steht? Und wenn ja, dann wo und wie komme ich da dran?
Danke schonmal und Grüße,
Chris
Hier mein momentaner Stand:
Sub But_connectClick(ByVal sender As Object, ByVal e As EventArgs)
'Variablen deklarieren
Dim i, a, c as Integer
'Los gehts
Me.dt_ftp = k.lese_FTP_Verbindung
Dim request As FtpWebRequest = FtpWebRequest.Create(me.dt_ftp.Rows(0).Item(1))
request.Method = WebRequestMethods.Ftp.ListDirectory
'This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential(me.dt_ftp.Rows(0).Item( _
2),me.dt_ftp.Rows(0).Item(3))
Dim response as FtpWebResponse = request.GetResponse()
Dim responseStream as Stream = response.GetResponseStream
Dim reader as StreamReader = new StreamReader(responseStream)
Do While reader.Peek >= 0
me.treeView_ftp.Nodes.Add(reader.Readline)
Loop
reader.Close()
response.Close()
For i = 0 To Me.treeView_ftp.Nodes.Count -1
Try
request = FtpWebRequest.Create(me.dt_ftp.Rows(0).Item(1) & "\" & _
me.treeView_ftp.Nodes(i).Text)
request.Method = WebRequestMethods.Ftp.ListDirectory
'This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential(me.dt_ftp.Rows(0).Item( _
2),me.dt_ftp.Rows(0).Item(3))
response = request.GetResponse()
responseStream = response.GetResponseStream
reader = new StreamReader(responseStream)
Do While reader.Peek >= 0
me.treeView_ftp.Nodes(i).Nodes.Add(reader.Readline)
Loop
reader.Close()
response.Close()
Catch ex as Exception
me.treeView_ftp.Nodes(i).Nodes.Add("Kein Zugriff")
End try
Next
For i = 0 To Me.treeView_ftp.Nodes.Count -1
For a = 0 To Me.treeView_ftp.Nodes(i).Nodes.Count -1
Try
request = FtpWebRequest.Create(me.dt_ftp.Rows(0).Item(1) & "\" & _
me.treeView_ftp.Nodes(i).Text & "\" & me.treeView_ftp.Nodes(i).Nodes(a).text)
request.Method = WebRequestMethods.Ftp.ListDirectory
'This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential(me.dt_ftp.Rows(0).Item( _
2),me.dt_ftp.Rows(0).Item(3))
response = request.GetResponse()
responseStream = response.GetResponseStream
reader = new StreamReader(responseStream)
Do While reader.Peek >= 0
me.treeView_ftp.Nodes(i).Nodes(a).Nodes.Add(reader.Readline)
Loop
reader.Close()
response.Close()
Catch ex as Exception
me.treeView_ftp.Nodes(i).Nodes.Add("Kein Zugriff")
End try
Next
Next
For i = 0 To Me.treeView_ftp.Nodes.count -1
For a = 0 To Me.treeView_ftp.Nodes(i).Nodes.count -1
For c = 0 To Me.treeView_ftp.Nodes(i).Nodes(a).Nodes.Count -1
Try
request = FtpWebRequest.Create(me.dt_ftp.Rows(0).Item(1) & "\" & _
me.treeView_ftp.Nodes(i).Text & "\" & me.treeView_ftp.Nodes(i).Nodes(a).text _
& "\" & me.treeView_ftp.Nodes(i).Nodes(a).Nodes(c).Text)
request.Method = WebRequestMethods.Ftp.ListDirectory
'This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential(me.dt_ftp.Rows(0).Item( _
2),me.dt_ftp.Rows(0).Item(3))
response = request.GetResponse()
responseStream = response.GetResponseStream
reader = new StreamReader(responseStream)
Do While reader.Peek >= 0
me.treeView_ftp.Nodes(i).Nodes(a).Nodes(c).Nodes.Add(reader.Readline)
Loop
reader.Close()
response.Close()
Catch ex as Exception
me.treeView_ftp.Nodes(i).Nodes.Add("Kein Zugriff")
End try
Next
Next
Next
End Sub |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
TOP! Unser Nr. 1 
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|