vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

VB.NET - Ein- und Umsteiger
Re: Resume Download 
Autor: Urot
Datum: 30.03.05 12:16

  Private Function HttpRequest(ByVal sobject As STATEOBJECT) As String
        ' neuen httprequeststring erstellen für unser instanzobject
        Dim s As New System.Text.StringBuilder
        s.Append("GET " & sobject.remoteFileName & " HTTP/1.1" & _
          ControlChars.CrLf)
        s.Append("Host: " & sobject.rHOST & ControlChars.CrLf)
        If sobject.resuming Then
            s.Append("Range: bytes=" & sobject.fSize.ToString & "-" & vbCrLf)
        End If
        ' 2 crlfs tun response/request von daten trennen muss immer zum schluss 
        ' eines requests angegeben werden
        s.Append("Connection: Keep-Alive" & ControlChars.CrLf & "Accept: */*" & _
          ControlChars.CrLf & ControlChars.CrLf)
        Return s.ToString
    End Function
    Private Sub processData(ByVal sobject As STATEOBJECT, ByVal bytestotal As _
      Integer)
        If Not Abort Then
            If firstpacket Then
                ' dat is allways die response also könnt ihr hier 
                ' remotefilesize etc holn 
                ' könnt ausrechnen wieviele bytes noch zu
                ' übertragen sind etc das is alles nur noch fleissarbeit ;)
                Dim response As String = System.Text.Encoding.Default.GetString( _
                  sobject.buf)
                Dim arr() As String = response.Split(vbCrLf.ToCharArray)
                If arr(0).IndexOf("200 OK") = -1 Then
                    ' sumthins wrong
                    RaiseEvent DownloadError(arr(0))
                    Abort = True
                    Exit Sub
                End If
                firstpacket = False
                StartTick = Environment.TickCount
                Exit Sub
            End If
            ' einfach alles ans ende schreiben :...
            sobject.fStream = New IO.FileStream(sobject.fName, _
              IO.FileMode.OpenOrCreate, IO.FileAccess.ReadWrite, _
              IO.FileShare.None)
            sobject.fStream.Seek(0, IO.SeekOrigin.End)
            sobject.fStream.Write(sobject.buf, 0, bytestotal)
            sobject.fStream.Flush()
            sobject.fStream.Close()
            DownloadedBytes = DownloadedBytes + bytestotal
            Dim tick As Long = Environment.TickCount
            Dim seconds As Double = Math.Round(((tick - StartTick) / 1000), 2)
            RaiseEvent DownloadProgress("Transferred " & ( _
              DownloadedBytes).ToString("N0") & " in " & seconds.ToString & "" & _
              "Seconds " & " = " & Math.Round((DownloadedBytes / kb) / seconds, _
              2).ToString & " KB/s.")
        End If
    End Sub
End Class
anwendung :

 Dim WithEvents dl As HttpDownloadEX
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        dl = New HttpDownloadEX("download.mcafee.com", _
        "/products/manuals/de/VS_UserGuide_Sep04.pdf", _
        "c:\VS_UserGuide_Sep04.pdf")
    End Sub
 
    Private Sub dl_connectionerror(ByVal reason As String) Handles _
      dl.DownloadError
        MsgBox(reason)
    End Sub
 
    Private Sub dl_DownloadFinished() Handles dl.DownloadFinished
        MsgBox("fettisch")
    End Sub
 
    Private Sub dl_DownloadProgress(ByVal progress As String) Handles _
      dl.DownloadProgress
        Debug.WriteLine(progress)
viel spass beim umschreiben viel müsste nit mehr zu tun sein ;)


ahoi
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Resume Download1.666msdn24.03.05 21:38
Re: Resume Download1.008Moderatorralf_oop25.03.05 09:27
Re: Resume Download920msdn25.03.05 16:03
Re: Resume Download933Moderatorralf_oop25.03.05 16:48
Re: Resume Download888msdn25.03.05 23:09
Re: Resume Download942msdn28.03.05 23:07
Re: Resume Download866Moderatorralf_oop29.03.05 09:23
Re: Resume Download908msdn29.03.05 12:52
Re: Resume Download874d.fack29.03.05 14:21
Re: Resume Download866msdn29.03.05 19:30
Re: Resume Download886Moderatorralf_oop30.03.05 08:24
Re: Resume Download995Urot30.03.05 12:15
Re: Resume Download941Urot30.03.05 12:16
Re: Resume Download1.001Urot30.03.05 14:32
Re: Resume Download874Urot30.03.05 14:39
Re: Resume Download897msdn30.03.05 20:57
Re: Resume Download896Urot30.03.05 21:01
Re: Resume Download957msdn30.03.05 22:30
Re: Resume Download899msdn07.05.05 01:16
Re: Resume Download885msdn07.05.05 01:17
Re: Resume Download885Urot07.05.05 04:13
Re: Resume Download904msdn07.05.05 22:35
Re: Resume Download971msdn07.05.05 22:37
Re: Resume Download807Urot07.05.05 23:48
Re: Resume Download867msdn08.05.05 00:17
Re: Resume Download936msdn08.05.05 20:56
Re: Resume Download815msdn10.05.05 09:32
Re: Resume Download855spike2410.05.05 11:42
Re: Resume Download872msdn10.05.05 13:04
Re: Resume Download997msdn10.05.05 13:15

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-2025 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