Hi Community,
ich möchte ein kleines Programm programmieren, welches die Downloadgeschwindigkeit errechnet.
Dazu verwende ich folgenden Code:
Allerdings gibt die MessageBox immer 1,1***e+** aus.
Das kann doch nicht stimmen. Ich muss also irgendwo einen Logikfehler haben... Könnt ihr mir da helfen?
ich möchte ein kleines Programm programmieren, welches die Downloadgeschwindigkeit errechnet.
Dazu verwende ich folgenden Code:
VB.NET-Quellcode
- Public Class frm_main
- Friend WithEvents speedtest As New Net.WebClient
- Dim dlfirst As Boolean = True
- Dim dlstart As Integer
- Dim dlend As Integer
- Dim dldif As Integer
- Dim dlspeed As Double
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- MsgBox(Environment.TickCount())
- End Sub
- Private Sub bt_dl_start_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_dl_start.Click
- If (IO.File.Exists("1mb.txt")) Then
- IO.File.Delete("1mb.txt")
- End If
- speedtest.DownloadFileAsync(New Uri("http://gamez64.net/1mb.txt"), "1mb.txt")
- lbl_dl_status.Text = "Verbinden..."
- bt_dl_start.Enabled = False
- End Sub
- Private Sub speedtest_DownloadFileCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs) Handles speedtest.DownloadFileCompleted
- dlend = Environment.TickCount
- dldif = dlend - dlstart
- dlspeed = 1 / dldif
- MsgBox(dlspeed.ToString())
- End Sub
- Private Sub speedtest_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles speedtest.DownloadProgressChanged
- If (dlfirst = True) Then
- dlstart = Environment.TickCount()
- dlfirst = False
- End If
- pb_dl_status.Value = e.ProgressPercentage
- lbl_dl_status.Text = "Herunterladen... " & e.ProgressPercentage & "%"
- End Sub
- End Class
Das kann doch nicht stimmen. Ich muss also irgendwo einen Logikfehler haben... Könnt ihr mir da helfen?