ftp download

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von tobiasre.

    ftp download

    Hi , ich arbeite zurzeit an einem ftp programm mit vb 2005,
    der ftp upload geht schon. Doch wie mache ich ein ftp download ??

    Der upload Code :

    VB.NET-Quellcode

    1. Private Sub Form1_Load(ByVal sender As System.Object, _
    2. ByVal e As System.EventArgs) Handles MyBase.Load
    3. ' lokales Verzeichnis, in dem sich die Datei befindet,
    4. ' die hochgeladen werden soll
    5. Dim sLocalPath As String = "c:\ordner\"
    6. Dim sLocalFile As String = "MeineDatei.mdb"
    7. ' FTP-Server
    8. Dim sFTPHost As String = "ftp://meine-domain.de/"
    9. ' Benutzername und Kennwort für den Server-Zugriff
    10. Dim sUserName As String = "MeinBenutzername"
    11. Dim sPassword As String = "MeinPasswort"
    12. ' Datei wie UploadFile-Methode hochladen
    13. My.Computer.Network.UploadFile(sLocalPath & sLocalFile, _
    14. sFTPHost & My.Computer.Clock.LocalTime.DayOfWeek & "_" & sLocalFile, _
    15. sUserName, sPassword, True, 500, FileIO.UICancelOption.DoNothing)
    16. End Sub


    Schon mal danke ...
    Wie wärs mit:

    VB.NET-Quellcode

    1. My.Computer.Network.DownloadFile(...)
    ?

    Aber die Methoden aus dem My-Namespace sind eh nich die besten. Schau dir mal FTPWebRequest und FTPWebResponse auf dem Namespace System.Net an, die bieten da mehr funktionalität wie z.B. DirectoryListing etc. :)
    Ok , das hat mehr möglichkeiten ist aber auch komplizirter.
    Und so gut kenn ich mich mit VB etc. doch nicht aus :whistling: .

    Gibt es auch eine möglichkeit das ganze mit der My-Namespace Methode zu machen ?
    (die versteh ich nehmlich ;) )
    Falls ja bitte ein Link oder nen Quell Code . Danke. :thumbup:

    Falls das mit der My-Namespace methode nicht moglich ist kann mir jemand ein Quell Code Beispiel
    mit der System.Net (FTPWebRequest , FTPWebResponse) zeigen/schreiben was eine Datei (MeineDatei.txt) vom ftp server runterläd und unter c:/ordner/ speichert. Danke :thumbup:
    hai !
    schau mal hier:

    VB.NET-Quellcode

    1. Private Sub DownloadFTPFile(ByVal User As String, ByVal Passwort As String, ByVal RemoteFile As String, ByVal LocalFile As String, ByVal Exist As Boolean)
    2. Dim adress = New Uri(RemoteFile) 'URL Wandeln
    3. client.Credentials = New NetworkCredential(User, Passwort) 'Auth
    4. If File.Exists(LocalFile) Then
    5. If Exist = True Then
    6. Kill(LocalFile) 'Fals vorhanden, löschen
    7. client.DownloadFileAsync(adress, LocalFile) 'File Holen
    8. Else
    9. MsgBox("File bereits vorhanden. Download wird abgebrochen!")
    10. End If
    11. Else
    12. client.DownloadFileAsync(adress, LocalFile) 'File Holen
    13. End If
    14. End Sub
    15. Private Sub ProgessChanged(ByVal sender As Object, _
    16. ByVal e As DownloadProgressChangedEventArgs) _
    17. Handles client.DownloadProgressChanged
    18. ProgressBar.Value = e.ProgressPercentage 'progress Bar
    19. Label1.Text = e.ProgressPercentage + "%"
    20. End Sub


    Progressbar kannst weg lassen !

    hier ist der Link zu die Code

    board.raidrush.ws/showthread.php?t=395611


    Mfg Alex ;) ;)
    Jop, der My-Namespace ist VB-only, somit nicht Zukunftsorientiert (falls du mal mit C# arbeiten musst) und erst seit .net 2.0 vorhaneden (falls du mal mit .net 1.x arbeiten musst). Abgesehen davon ist das ganze weniger objektorientiert und liefert somit ein "wenig" nicht-objektorierntieres VB6-Feeling.
    Hai !
    Der Mad Andy hat schon Recht, hier hast du Convertierte Code von C# in VB


    Imports System
    1. Imports System.IO
    2. Imports System.Net
    3. Imports System.Text
    4. Namespace Examples.System.Net
    5. Public Class WebRequestGetExample
    6. Public Shared Sub Main()
    7. ' Get the object used to communicate with the server.
    8. Dim request As FtpWebRequest = DirectCast(WebRequest.Create("ftp://www.contoso.com/test.htm"), FtpWebRequest)
    9. request.Method = WebRequestMethods.Ftp.DownloadFile
    10. ' This example assumes the FTP site uses anonymous logon.
    11. request.Credentials = New NetworkCredential("anonymous", "janeDoe@contoso.com")
    12. Dim response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse)
    13. Dim responseStream As Stream = response.GetResponseStream()
    14. Dim reader As New StreamReader(responseStream)
    15. Console.WriteLine(reader.ReadToEnd())
    16. Console.WriteLine("Download Complete, status {0}", response.StatusDescription)
    17. reader.Close()
    18. response.Close()
    19. End Sub
    20. End Class
    21. End Namespace


    PS:Sorry mit VB Tag hatas nicht geklappt !


    mfg Alex