AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi urlDownloadToFile hängt sich bei IP-Wechsel auf
Thema durchsuchen
Ansicht
Themen-Optionen

urlDownloadToFile hängt sich bei IP-Wechsel auf

Ein Thema von Mendelsohn · begonnen am 13. Jan 2009 · letzter Beitrag vom 24. Jun 2009
 
Mendelsohn

Registriert seit: 13. Jan 2009
9 Beiträge
 
#1

urlDownloadToFile hängt sich bei IP-Wechsel auf

  Alt 13. Jan 2009, 18:13
Hallo,

da ich hier nicht mehr weiterkomme, wende ich mich einmal an das Forum:
Ich möchte mit urlDownloadToFile Dateien herunterladen, allerdings hängt sich die Routine auf, sobald die Verbindung abbricht (z.B. weil gerade routinemäßig die dynamische IP vom Provider gewechselt wird). Aus Gründen der Benutzerfreundlichkeit habe ich den Download schon einmal in einen eigenen Thread ausgelagert.

Mit folgenden Ansätzen gab es bis jetzt leider kein weiterkommen:

Der Download kann nicht abgebrochen werden, weil dies über den Rückgabewert der Methode .OnProgress geschehen muss, die ab und an von urlDownloadToFile aufgerufen wird. Sobald die Verbindung aber abbricht, wird die Methode auch nicht mehr aufgerufen, sodass ein normaler Abbruch nicht mehr möglich ist.

Den Download-Thread ordnungsgemäß mit Thread.Terminate; Thread.Free; zu beenden funktioniert auch nicht, so sich ja urlDownloadToFile und damit auch der Thread aufgehängt hat.

Es bleibt nur noch den Thread gewaltsam mit TerminateThread (Thread.Handle,Thread.ThreadID); ThreadFree; abzuwürgen, da aber nicht alles ordnungsgemäß beendet wird, funktioniert ein erneuter Downloadversuch mit urlDownloadToFile danach nicht mehr richtig. Wie ich inzwischen herausgefunden habe, liegt dies daran, dass nach dem "Abschuss" des Download-Threads auf die halbfertige Datei auf der Festplatte immer noch zugegriffen wird. Bei einem erneuten Download-Versuch müsste die Datei dann also unter einem anderen Namen gespeichert und die halbfertige Dateileiche liegengelassen werden, was aber sehr unsauber wäre.


Grüße,

Mendelsohn
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz