FTP Upload progress

  • VB.NET

Es gibt 19 Antworten in diesem Thema. Der letzte Beitrag () ist von SystemUnknow.

    FTP Upload progress

    Hallo ich habe mir eine upload programm gemacht. datei aus wälen und es wir auf mein ftp server hoch geladen! wie kann ich jetzt noch eine progressbar und ein label mit der prozent zahl rein machen? das ist mein code.



    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    3. Dim wct As New Net.WebClient
    4. wct.Credentials = New Net.NetworkCredential("FTP Username", "FTP Password")
    5. wct.UploadString("ftp://nepster.sexyi.am/text.txt", RichTextBox1.Text)
    6. End Sub
    7. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    8. Dim wct As New Net.WebClient
    9. wct.Credentials = New Net.NetworkCredential(Benutzername.Text, Password.Text)
    10. wct.DownloadString("ftp://nepster.sexyi.am/text.txt")
    11. RichTextBox1.Text = wct.DownloadString("ftp://nepster.sexyi.am/text.txt")
    12. End Sub
    13. Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    14. OpenFileDialog1.ShowDialog()
    15. TextBox1.Text = OpenFileDialog1.FileName()
    16. dateiname.Text = OpenFileDialog1.SafeFileName
    17. End Sub
    18. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    19. My.Computer.Network.UploadFile(TextBox1.Text, "ftp://" & FTPServer.Text & "/" + dateiname.Text, "FTP Username", "FTP Password")
    20. End Sub
    21. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    22. End Sub
    23. End Class



    sowas nur umgedret wellisoft.co.de/Stuff/Downloader_project.rar

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Nepster“ ()

    Hallo Nepste,

    kleinere Fehler drin.

    Bitte ändere

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim wct As New Net.WebClient
    3. wct.Credentials = New Net.NetworkCredential("*****", "*****")
    4. wct.UploadString(New Uri("ftp://nepster.sexyi.am/text.txt"), TextBox1.Text)
    5. End Sub

    da wird eine Uri erwartet und kein String.
    Was die überhaupt soll ?
    Warum RichtextBox1.Text -> kann ich nicht Nachvollziehen. da du weiter untern dann ach der TextBox1.Text fragst.

    In der

    VB.NET-Quellcode

    1. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    2. My.Computer.Network.UploadFile(TextBox1.Text, "ftp://" & FTPServer.Text & "/" & dateiname.Text, "*****", "*****")
    3. End Sub

    steht bereits "ftp://" drin. also sollte in der FTPServer.Test auch kein ftp:// mehr vorkommen.
    Das + Zeichen ersetzt du bitte durch ein &. Strings werden mit & verknüpft.

    Wenn ich dann mit Button4 eine Datei auswähle wird sie nach dem drücken von Button2 auch tatsächlich hochgeladen.

    MfG
    Bernd
    also das mit der RichtextBox1.Text ist für mein forum für die admin und mods die schreiben was rein und wenn ein anderer auf download klickt komt der text in der RichtextBox1. und sie können noch dateien hoch laden aber für das hochladen der dateien will ich noch eine progressbar! haben und eine % zahl anzeige! alles leuft so richtig gut nur will noch eine progressbar haben!.
    UploadFileAsync
    Und dann ProgressChangedEvent.

    msdn.microsoft.com/en-us/libra…ient.uploadfileasync.aspx
    "Life isn't about winning the race. Life is about finishing the race and how many people we can help finish the race." ~Marc Mero

    Nun bin ich also auch soweit: Keine VB-Fragen per PM! Es gibt hier ein Forum, verdammt!

    Nepster schrieb:

    ??? kann mir nicht jemand das in meinen code einfügen???

    Nein, weil wir sind nicht dafür da etwas für dich zu Programmieren, sondern Hilfestellung zu geben. Wenn du das Programmiert haben willst, dann verschiebe ich den Thread gerne in den Marktplatz und du musst dann eine entsprechende Gegenleistung für die Dienstleistung anbieten die dir jemand macht.
    Nein, weil wir sind nicht dafür da etwas für dich zu Programmieren, sondern Hilfestellung zu geben. Wenn du das Programmiert haben willst, dann verschiebe ich den Thread gerne in den Marktplatz und du musst dann eine entsprechende Gegenleistung für die Dienstleistung anbieten die dir jemand macht.


    was für eine Dienstleistung denn?

    Nepster schrieb:

    ??? kann mir nicht jemand das in meinen code einfügen???

    Das ist ganz klar eine Aufforderung zur Arbeit.
    Wer Arbeitet heute schon ohne Gegenleistung.
    Das ist was Dodo damit sagen möchte.

    Versuch es selber. Ich habe dir schon einen Passenden Link gegeben.

    Wenn dann Probleme auftauchen, wird dir gerne geholfen.

    Bernd
    ey ich schnalle das nicht kann mir nicht jemand den Code hier Posten und dann sagen wie ich ihn einfügen muss?? ich habe mal probiert aber es läuft nicht das ist mein Code.!

    VB.NET-Quellcode

    1. Public Class Form1
    2. WithEvents webclient As New Net.WebClient 'WithEvents Web Client As New Net.WebClient
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. Dim wct As New Net.WebClient
    5. wct.Credentials = New Net.NetworkCredential("FTP Username", "FTP Password")
    6. wct.UploadString("ftp://nepster.sexyi.am/text.txt", RichTextBox1.Text)
    7. Try
    8. webclient.Credentials = New Net.NetworkCredential("FTP Username", "FTP Password")
    9. Dim Uri As New Uri(TextBox1.Text & "")
    10. webclient.UploadFileAsync(Uri, TextBox1.Text)
    11. Catch ex As Exception
    12. MsgBox(ex.ToString)
    13. End Try
    14. End Sub
    15. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    16. Dim wct As New Net.WebClient
    17. wct.Credentials = New Net.NetworkCredential(Benutzername.Text, Password.Text)
    18. wct.DownloadString("ftp://nepster.sexyi.am/text.txt")
    19. RichTextBox1.Text = wct.DownloadString("ftp://nepster.sexyi.am/text.txt")
    20. End Sub
    21. Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    22. OpenFileDialog1.ShowDialog()
    23. TextBox1.Text = OpenFileDialog1.FileName()
    24. dateiname.Text = OpenFileDialog1.SafeFileName
    25. End Sub
    26. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    27. My.Computer.Network.UploadFile(TextBox1.Text, "ftp://" & FTPServer.Text & "/" + dateiname.Text, "FTP username", "FTP password")
    28. End Sub
    29. Private Sub webclient_uploadprogresschanged(ByVal sender As Object, ByVal e As System.Net.UploadProgressChangedEventArgs) Handles webclient.Uploadprogresschanged
    30. ProgressBar1.Value = e.ProgressPercentage
    31. Label2.Text = e.ProgressPercentage & "%"
    32. If ProgressBar1.Value = 100 Then
    33. Label2.Text = "der upload ist fertig"
    34. End If
    35. End Sub
    36. End Class
    so ich habe wenn dann noch das gefunden aber ich will eine Datei auswählen mit einen Button!


    VB.NET-Quellcode

    1. Imports System.Net
    2. Public Class Form1
    3. Dim WithEvents web As Net.WebClient
    4. Private Sub web_UploadProgressChanged(ByVal sender As Object, ByVal e As System.Net.UploadProgressChangedEventArgs) Handles web.UploadProgressChanged
    5. ProgressBar1.Value = e.ProgressPercentage
    6. ProgressBar1.Refresh()
    7. Me.Text = "Upload" & " - " & e.ProgressPercentage & "% Abgeschlossen"
    8. End Sub
    9. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    10. web = New Net.WebClient
    11. Dim pfad As String = "C:\Users\USER\Desktop\Sonstiges\__light_wallpaper_2___by_whitespiritwolf.jpg"
    12. Dim url As String = "ftp://fileuploaderag.fi.funpic.de/new.jpg"
    13. web.Credentials = New Net.NetworkCredential("fileuploaderag", "PASSWORT")
    14. web.UploadFileAsync(New Uri(url), pfad)
    15. End Sub
    16. End Class
    Maaaaaaaaan. Toll. Ich kann auch so rumblöken.

    Ernsthaft. Lern die Grundlagen des Programmierens. Was du suchst, ist ein OpenFileDialog. Du musst folgendermaßen vorgehen:

    Neue Instanz von einem OpenFileDialog erstellen.
    Dann evtl. Filter festlegen und den Dialog mit .ShowDialog() aufrufen.
    Dann rückgabe prüfen und im .FileName den Dateinamen entnehmen.

    Done. Noch fragen? MSDN hilft.
    ich habe das dann jetzt ma so gemacht aber jetzt habe ich ein fehler

    VB.NET-Quellcode

    1. Imports System.Net
    2. Public Class Form1
    3. Dim WithEvents web As Net.WebClient
    4. Private Sub web_UploadProgressChanged(ByVal sender As Object, ByVal e As System.Net.UploadProgressChangedEventArgs) Handles Web.UploadProgressChanged
    5. ProgressBar1.Value = e.ProgressPercentage
    6. ProgressBar1.Refresh()
    7. Me.Text = "Upload" & " - " & e.ProgressPercentage & "% Abgeschlossen"
    8. End Sub
    9. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    10. web = New Net.WebClient
    11. Dim pfad As String = ""
    12. Dim url As String = "ftp://fileuploaderag.fi.funpic.de/"
    13. web.Credentials = New Net.NetworkCredential("fileuploaderag", "PASSWORT")
    14. web.UploadFileAsync(New Uri(url), pfad)
    15. End Sub
    16. Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click
    17. End Sub
    18. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    19. OpenFileDialog1.ShowDialog()
    20. TextBox1.Text = OpenFileDialog1.FileName
    21. End Sub
    22. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    23. End Sub
    24. End Class
    hä bei mir sagt der jetzt Das Objekt des Typs "System.ComponentModel.AsyncOperation" kann nicht in Typ "UploadBitsState" umgewandelt werden. was ist jetzt faltsch`??

    kann das nicht einer ma machen ich kann ihn dann bei anderen sachen vieleicht helfen desigen oder so

    VB.NET-Quellcode

    1. Imports System.Net
    2. Public Class Form1
    3. Dim WithEvents web As Net.WebClient
    4. Private Sub web_UploadProgressChanged(ByVal sender As Object, ByVal e As System.Net.UploadProgressChangedEventArgs) Handles Web.UploadProgressChanged
    5. ProgressBar1.Value = e.ProgressPercentage
    6. ProgressBar1.Refresh()
    7. Me.Text = "Upload" & " - " & e.ProgressPercentage & "% Abgeschlossen"
    8. End Sub
    9. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    10. web = New Net.WebClient
    11. Dim pfad As String = "textbox1.text"
    12. Dim url As String = "ftp://nepster.sexyi.am"
    13. web.Credentials = New Net.NetworkCredential("use", "pw")
    14. web.UploadFileAsync(New Uri(url), pfad)
    15. End Sub
    16. Private Sub ProgressBar1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProgressBar1.Click
    17. End Sub
    18. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    19. OpenFileDialog1.ShowDialog()
    20. TextBox1.Text = OpenFileDialog1.FileName
    21. End Sub
    22. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    23. End Sub
    24. End Class
    @nepster bitte benutze mal MSDN/google oder auch die sufu von VB-P du würst haufenweise zu deinem thema finden das mit up/download is total einfach und du hast doch den meisten code schon auserdem einen fehler postet man auch nicht einfach hir da sucht man auch erstmal via google fals du dieses google nicht kennst hir:google.de
    und doppelposting is schon nicht schön bzw. nicht erlaubt aber dann noch mit 3 zu kommen is unhöflich nochmal in der zusammenfassung:
    - benutze google.de
    - sufu des VB-P forums
    - lese ein buch
    - denk nach
    - such nochmal
    - und wenn du immernoch nicht weiter weist kannst du hir nen beitrag schreiben

    PS: google.de

    PSS: fals du google nicht magst : www.Bing.de
    so jetzt habe ich es aber irgend wo ist noch ein fehler aber vb zeigt mir den nicht an wo ist der?

    VB.NET-Quellcode

    1. Public Class MainForm
    2. WithEvents WebClient As New Net.WebClient 'Neuer WebClient mit WithEvents damit wir Events haben.
    3. Private Sub btn_upload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_upload.Click
    4. Try
    5. WebClient.Credentials = New Net.NetworkCredential(txt_user.Text, txt_pass.Text)
    6. Dim UploadUri As New Uri(txt_host.Text & txt_spath.Text)
    7. WebClient.UploadFileAsync(UploadUri, txt_data.Text)
    8. txt_host.Enabled = False
    9. txt_user.Enabled = False
    10. txt_pass.Enabled = False
    11. txt_spath.Enabled = False
    12. txt_data.Enabled = False
    13. btn_browse.Enabled = False
    14. btn_upload.Enabled = False
    15. Catch ex As Exception
    16. MsgBox(ex.ToString)
    17. End Try
    18. End Sub
    19. Private Sub WebClient_UploadProgressChanged(ByVal sender As Object, ByVal e As System.Net.UploadProgressChangedEventArgs) Handles WebClient.UploadProgressChanged
    20. PB.Value = e.ProgressPercentage
    21. lb_status.Text = "Status: " & e.ProgressPercentage & "%"
    22. If PB.Value = 100 Then
    23. MsgBox("Upload war erfolgreich!")
    24. End If
    25. End Sub
    26. Private Sub btn_browse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_browse.Click
    27. FileDialog.ShowDialog()
    28. End Sub
    29. Private Sub FileDialog_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles FileDialog.FileOk
    30. txt_data.Text = FileDialog.FileName
    31. End Sub
    32. Private Sub MainForm_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    33. e.Cancel = True
    34. Dim msgresult As String = MsgBox("Willst du das Programm wirklich beenden? Ein Upload würde fehlschlagen...", MsgBoxStyle.YesNo, Title:="Beenden?")
    35. If msgresult = vbYes Then
    36. End
    37. End If
    38. End Sub
    39. Private Sub MainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    40. End Sub
    41. End Class