Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

riCo

Treue Seele

  • »riCo« ist der Autor dieses Themas

Beiträge: 165

Beruf: Student

  • Private Nachricht senden

1

28.04.2008, 16:07

Socket - Nach Übertragungsabbruch Download fortsetzen

Hallo,

ich habe eine Funktion zum Programmupdate geschrieben. Nun möchte ich - falls beispielsweise wärend des downloads die Internetverbindung Weg ist (GPRS) - an dem letzten Punkt anfangen und nicht alles komplett neu laden.

Kann mir hier jemand weiter helfen? Das herunterladen funktioniert alles und die Datei wird nach x Byte geschrieben und geflusht. Ich verwende die MFC, also die Klasse CHttpConnection, CInternetSession, CHttpFile usw.
Wir leben alle unter dem Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

2

28.04.2008, 17:09

Ich persönlich nutze kein MFC und habe das Problem in dieser Form auch nie behandelt. Die eigentliche Idee ist aber einfach:
Wenn die MFC diese Option nicht von sichaus anbietet, musst du schauen, ob bereits Teile runtergeladen und abgespeichert wurden (Viele Programme nutzen dafür Dateien mit der Endung .part). Dann muss man dem Host mitteilen, dass man die Datei nur noch ab einen gewissen Punkt braucht und hängt dann die vom Host empfangenen Daten einfach an die schon vorhandenen Daten hinten dran. (Annahmen: Host unterstützt das Laden von Dateiteilen, die Teile kommen in korrekter Reihenfolge an)

Natürlich musst du aber erstmal schauen, ob und wenn ja wie der Host ein Runterladen in Teilen unterstützt.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

riCo

Treue Seele

  • »riCo« ist der Autor dieses Themas

Beiträge: 165

Beruf: Student

  • Private Nachricht senden

3

29.04.2008, 07:27

Soweit ist mir das schon klar, aber wie sage ich dem Host: gib mir die Datei ab Position x? Bist du dir sicher das es vom Server unterstützt werden muss? Ok, irgendwo schon, aber diverse Downloadmanager ermöglichen das eigentlich immer. Ich glaube ehr das es im HTTP-Protokoll integriert ist..
Wir leben alle unter dem Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.

riCo

Treue Seele

  • »riCo« ist der Autor dieses Themas

Beiträge: 165

Beruf: Student

  • Private Nachricht senden

4

29.04.2008, 07:55

Ich habe das Problem gelöst!

Man kann die Methode Seek(...) der Klasse CHttpFile nutzen, man muss nur auf die genaue Positionierung des Seek-Befehls achten.
Damit ist man in der Lage, die herunterzuladende Datei als herkömmliches CFile-Objekt zu verwenden. Der HTTP-Header würde mich aber mal interessieren..
Wir leben alle unter dem Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

DasBlub

Alter Hase

Beiträge: 802

Wohnort: Schweiz

Beruf: Programmierer

  • Private Nachricht senden

6

29.04.2008, 12:22

hier bist du an der quelle: http://www.w3.org/Protocols/ ^^

Werbeanzeige