Downloadgeschwindigkeit im Label anzeigen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von mrMo.

    Downloadgeschwindigkeit im Label anzeigen

    Nabend,

    Bin ein Downloader am entwickeln, der auch soweit schon funktioniert, wollte jetzt gerne noch einbauen das im label die geschwindigkeit des downloads angezeigt wird, ich meine nicht speedtest.

    folgenden code habe ich mir im internet rausgersucht womit ich mein programm zum laufen gebracht habe.

    VB.NET-Quellcode

    1. Private Sub DownloadItem(ByVal sURL As String,
    2. ByVal strFile As String, ByVal strFolder As String)
    3. Dim webreq As HttpWebRequest
    4. Dim webresp As HttpWebResponse
    5. Dim bReader As BinaryReader
    6. Dim bWriter As BinaryWriter
    7. Dim stream As FileStream
    8. Dim buffer() As Byte = New Byte(1024) {}
    9. Dim bytesRead As Integer
    10. ' Fortschritt zunächst auf 0% setzen
    11. Me.ProgressBar1.Value = 0
    12. Try
    13. ' Datei-Download via HTTP "anfordern"
    14. webreq = HttpWebRequest.Create(sURL)
    15. webresp = webreq.GetResponse
    16. ' Download-Größe
    17. Me.ProgressBar1.Maximum = webresp.ContentLength
    18. ' lokale Datei öffnen
    19. stream = New FileStream(strFolder & "\" & strFile, FileMode.Create)
    20. bReader = New BinaryReader(webresp.GetResponseStream)
    21. bWriter = New BinaryWriter(stream)
    22. ' Datei blockweise downloaden und lokal speichern
    23. Do
    24. bytesRead = bReader.Read(buffer, 0, 1024)
    25. bWriter.Write(buffer, 0, bytesRead)
    26. ProgressBar1.Value += bytesRead
    27. ProgressBar1.Update()
    28. Loop Until bytesRead = 0
    29. ' alle Dateien schließen
    30. bWriter.Close()
    31. bReader.Close()
    32. stream.Close()
    33. Catch ex As Exception
    34. ' Bei Fehler...
    35. MessageBox.Show("Fehler: " & vbCrLf & ex.Message,
    36. "Fehler", MessageBoxButtons.OK,
    37. MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
    38. End Try
    39. End Sub
    40. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    41. Dim dlg As New FolderBrowserDialog
    42. Dim strFile As String
    43. Dim strFolder As String
    44. ' falls keine URL angegeben, Vorgang abbrechen
    45. If Me.TextBox1.Text.Length = 0 Then Exit Sub
    46. Dim strPathParts() As String = Me.TextBox1.Text.Split("/")
    47. strFile = strPathParts(strPathParts.GetUpperBound(0))
    48. ' Ordner-Auswahldialog anzeigen
    49. If dlg.ShowDialog Then
    50. strFolder = dlg.SelectedPath
    51. Else
    52. Exit Sub
    53. End If
    54. ' Download starten
    55. Button1.Enabled = False
    56. Call DownloadItem(TextBox1.Text, strFile, strFolder)
    57. MsgBox("Download beendet")
    58. Button1.Enabled = True
    59. End Sub


    *Topic verschoben, Code-BBCode angepasst*

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Marcus Gräfe“ ()

    (…) im label die geschwindigkeit des downloads (…)

    VB.NET-Quellcode

    1. MeinLabel.Text = DownloadGeschwindigkeit.ToString()
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen