vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Sehr langsamer Download mit Backgroundworker bitte um Hilfe 
Autor: bluedead
Datum: 25.03.11 00:49

 
m.IO
Imports System.Net
Imports System.ComponentModel

Public Class Form1
Dim watch As Long
Private th As BackgroundWorker
Dim speed1 As Long = 0
Dim speed2 As Long = 0
Dim Temp As String = Environment.GetEnvironmentVariable("Temp")
Dim Patcherver As String = "1.0"
Dim MyPfad As String = Path.GetDirectoryName(Application.ExecutablePath)

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
End
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Call DownloadItem("http://****************/************/test/filesizes.txt", "filesizes.txt", Temp)
Me.ProgressBar1.Value = 0
th.RunWorkerAsync()
Timer1.Enabled = True
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Form2.Show()
th = New BackgroundWorker
AddHandler th.DoWork, AddressOf th_DoWork
AddHandler th.RunWorkerCompleted, AddressOf th_Completed
AddHandler th.ProgressChanged, AddressOf th_ProgressChanged
th.WorkerReportsProgress = True
th.WorkerSupportsCancellation = True

End Sub



Private Sub DownloadItem(ByVal sURL As String, _
ByVal strFile As String, ByVal strFolder As String)

Dim webreq As HttpWebRequest
Dim webresp As HttpWebResponse
Dim bReader As BinaryReader
Dim bWriter As BinaryWriter
Dim stream As FileStream
Dim buffer() As Byte = New Byte(1024) {}
Dim bytesRead As Integer

' Fortschritt zunächst auf 0% setzen
Me.ProgressBar1.Value = 0

Try
' Datei-Download via HTTP "anfordern"
webreq = HttpWebRequest.Create(sURL)
webresp = webreq.GetResponse

' Download-Größe
Me.ProgressBar1.Maximum = webresp.ContentLength

' lokale Datei öffnen
stream = New FileStream(strFolder & "\" & strFile, FileMode.Create)
bReader = New BinaryReader(webresp.GetResponseStream)
bWriter = New BinaryWriter(stream)

Do
bytesRead = bReader.Read(buffer, 0, 1024)
bWriter.Write(buffer, 0, bytesRead)
ProgressBar1.Value += bytesRead
ProgressBar1.Update()
End If
Loop Until bytesRead = 0

' alle Dateien schließen
bWriter.Close()
bReader.Close()
stream.Close()

Catch ex As Exception
' Bei Fehler...
MessageBox.Show("Fehler: " & vbCrLf & ex.Message, _
"Fehler", MessageBoxButtons.OK, _
MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
End Try
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Sehr langsamer Download mit Backgroundworker bitte um Hilfe1.503bluedead25.03.11 00:49
Re: Sehr langsamer Download mit Backgroundworker bitte um Hi...989bluedead25.03.11 00:50
Re: Sehr langsamer Download mit Backgroundworker bitte um Hi...1.063bluedead25.03.11 06:30
Re: Sehr langsamer Download mit Backgroundworker bitte um Hi...950ModeratorRalfE25.03.11 09:23

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel