Bytes beim Download überspringen

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

FreetimeCoder

Betreff: Bytes beim Download überspringen

BeitragDo, Feb 15, 2007 13:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

Ich habe mir einen Downloader geschrieben (der schon funktioniert),aber noch folgendes machen soll: Ich habe die zu downloadende Datei folgendermaßen strukturiert:

Nummer aller Dateien

Dateiname
Bytegröße der Datei
DateiNummer
Datei-bytes (Also die eigentliche Datei)

Dateiname
Bytegröße der Datei
DateiNummer
Datei-bytes (Also die eigentliche Datei)

... usw, so oft wie nummer aller Dateien angibt.

Folglich sind alle zu downloadenden Dateien in einer Datei und werden ausgelesen.

Der Downloader macht nun folgendes:
Er lädt eine Datei runter, schreibt die entsprechende Datei mit "Dateiname" und jedesmal wenn eine Datei komplett runtergeladen ist, schreibt er eine Backupdatei mit der DateiNummer. Das soll dafür sein, dass er weiß, welche Datei als letztes Vollständig heruntergeladen wurde.

Nun will ich folgendes erreichen:
Wenn jemand den Download einfach abbricht und neustartet, soll der Downloader die BackUpdatei öffenen und an der Stelle weiter downloaden. Also wenn zB zuletzt Datei 5 runtergeladen wurde, soll er bei Datei 6 weitermachen.

Das Problem ist jetzt:
Wenn ich eine Downloadfrage schicke, schickt mir der Server die ganze Datei und ich müsste von vorne anfangen. Jetzt will ich aber alle schon gedownloadeten Bytes überspringen.

Und zum Schluss: Geht das? Oder muss ich doch alle Dateien einzeln runterladen?
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

Markus2

BeitragDo, Feb 15, 2007 13:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Das nennt sich Partial Content <- "Google" .
Du kannst im TCP Header einen Range angeben .
Also einfach gucken wie lang deine Datei ist und dann ab da neue
Daten anfordern und hinten dran hängen .
Wenn der Server kein Resume Download kennt erkennst du es
am Header und mußt die Datei von 0 an schreiben bzw. vorher löschen .

FreetimeCoder

BeitragDo, Feb 15, 2007 13:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke, werd ich mal versuchen Very Happy
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group