FTP Downloader

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Nicolas.

    FTP Downloader

    Hallo zusammen,

    Ich habe eine Frage und zwar ich habe mir einen Downloader erstellt mit dem ich Daten aus meinem FTP Server Downloaden kann. Er sagt mir er hat die Datei heruntergeladen aber die Datei ist nicht auf meinem Desktop also hat er sie ja doch nicht runtergeladen.

    Was mache ich falsch?



    VB.NET-Quellcode

    1. Imports System.Net
    2. Public Class Form1
    3. Public WithEvents downloader As WebClient
    4. Private Sub downloader_DownloadFileCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs) Handles Downloader.DownloadFileCompleted
    5. 'nach fertigstellung wird eine Msg Box erscheinen und der Button1 kann wieder gedrückt werden
    6. Button1.Enabled = True
    7. MsgBox("File downloaded!")
    8. End Sub
    9. Private Sub Button2_Click_1(sender As System.Object, e As System.EventArgs) Handles Button2.Click
    10. 'folderbrowser wird eingesetzt:
    11. FolderBrowserDialog1.ShowDialog()
    12. TextBox1.Text = FolderBrowserDialog1.SelectedPath ' dateipfad + Name und Format der Datei
    13. End Sub
    14. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    15. downloader = New WebClient ' deklariert downloader als eine Webanwendung
    16. downloader.Credentials = New Net.NetworkCredential("downloader", "####") 'sendet logindaten an den FTP Server
    17. downloader.DownloadFileAsync(New Uri("ftp://*********/Mods/downloader"), TextBox1.Text) ' Kopiert die Datei von dem FTP Server in das angegeben Verzeichnis
    18. Button1.Enabled = False ' Button1 wird festgesetzt
    19. Label1.Show()
    20. Label3.Show()
    21. End Sub
    22. Private Sub FolderBrowserDialog1_HelpRequest(sender As System.Object, e As System.EventArgs) Handles FolderBrowserDialog1.HelpRequest
    23. End Sub
    24. Private Sub downloader_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles downloader.DownloadProgressChanged
    25. Dim totalbytes As Long = e.TotalBytesToReceive / 1024
    26. Dim bytes As Long = e.BytesReceived / 1024 / 1024 ' Rechnen Bytes auf MegaBytes um (entfehre ein "/1024" wenn die Downloadmenge unter 10mb liegt)
    27. Label1.Text = "Bisher wurde gedownloadet: " & bytes.ToString & "MB" ' label1 ird durch text + bisherige Downloadmeng + text ersetzt
    28. Dim Prozentmaximum, Va, Vb, Prozent As Double
    29. Prozentmaximum = 100
    30. Va = bytes.ToString
    31. Vb = 6600000
    32. ProgressBar1.Maximum = Prozentmaximum
    33. Prozent = Va / Vb * 100 * 10 * 1024 ' rechnet % um
    34. If Prozent <= 100 Then
    35. ProgressBar1.Value = Prozent ' bringt progessbar zum laufen
    36. Label3.Text = Prozent & " %" ' bring label 3 zum einsatz
    37. End If
    38. End Sub
    39. End Class
    1) Brauchst du für den Download kein FTP sondern kannst über Http interagieren, zweitens:

    "ftp://*********/Mods/downloader" Willst du den ganzen Ordner downloaden, oder was ist downloader?
    Sicher das der Pfad in Textbox1 stimmt?