Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IdHTTP download ab und zu fehlerhaft? (https://www.delphipraxis.net/75684-idhttp-download-ab-und-zu-fehlerhaft.html)

alienous 23. Aug 2006 14:27


IdHTTP download ab und zu fehlerhaft?
 
hi,

habe ein problem beim download von bildern! und zwar hab ich folgende procedure

Delphi-Quellcode:
procedure download(PQuelle, PZiel: String);
var responseStream: TFileStream;
begin
  responseStream := TFileStream.Create(PZiel, fmCreate);
  try
    Datamodule1.IdHTTP1.Get(PQuelle, responseStream);
  finally
    responseStream.free;
  end;
end;
damit werden die dateien runtergeladen, als quelle kommt die url rein, und pziel ist der lokale pfad, zb c:\test.jpg

die procedure wird in ner schleife aufgerufen, so ca 10 mal je nachdem was da an arbeit abzuarbeiten ist.

das problem ist, das manchmal, obwohl die bilder unter der url zu finden sind, die bilder bei mir lokal 0kb groß sind, also gab es da einen übertragungsfehler? der server ist immer der selbe (von mir) also kanns nich an fehlenden rechten liegen.

habe bemerkt das bei nem kumpel, der isdn hat, das problem häufiger auftritt!
was kann ich gegen die 0kb dateien unternehmen?

habt ihr da nen tipp?
danke

Flips 23. Aug 2006 14:30

Re: IdHTTP download ab und zu fehlerhaft?
 
Hi.

Also wenn du nur fragst was man gegen die 0kb Datei tun kann, dann würd ich sagen einfach nach dem Download prüfen, ob die Datei > 0b ist und wenn nicht, dann einfach wieder herunterladen.

Bernhard Geyer 23. Aug 2006 14:32

Re: IdHTTP download ab und zu fehlerhaft?
 
Ich weiß jetzt nicht ob IdHTTP den Ablauf-Thread blockiert bis der Download vollständig ist. Falls nicht so gibts bestimmt ein Event welche dir Mitteilt wenn der Download abgeschlossen ist. Und erst danach darft du den nächsten Download starten.

Flips 23. Aug 2006 14:39

Re: IdHTTP download ab und zu fehlerhaft?
 
@Bernhard:
Gut, aber ist es nicht möglich das Delphi "denkt", dass der Download abgeschlossen ist, obgleich die Datei 0kb groß ist?
Es kann ja theoretisch auch ein Fehler im FileStream sein, ich würde es mal mit
Delphi-Quellcode:
responseStream := TFileStream.Create(PZiel, fmCreate or fmOpenReadWrite);
probieren, kann aber jetzt nicht sagen ob das was bringt da ich auf der Arbeit kein Delphi habe.

alienous 23. Aug 2006 14:48

Re: IdHTTP download ab und zu fehlerhaft?
 
danke erstmal!

also der thread wird scheinbar blockiert, weil ich auch ne ausgabe in eine listbox durchführe, gefolgt von einem processmessages, und eine 3mb datei braucht länger als eine 500kb datei...

wollte halt wissen wieso es zu den fehlerhaften übertragungen kommt, und ob man diese abfangen kann.

Dani 23. Aug 2006 15:06

Re: IdHTTP download ab und zu fehlerhaft?
 
Hast du schon versucht, mit try..except etwaige Exceptions von Get() abzufangen?

wfoertsch 22. Sep 2006 13:00

Re: IdHTTP download ab und zu fehlerhaft?
 
Zitat:

Zitat von alienous
hi,

habe ein problem beim download von bildern! und zwar hab ich folgende procedure

Delphi-Quellcode:
procedure download(PQuelle, PZiel: String);
var responseStream: TFileStream;
begin
  responseStream := TFileStream.Create(PZiel, fmCreate);
  try
    Datamodule1.IdHTTP1.Get(PQuelle, responseStream);
  finally
    responseStream.free;
  end;
end;
damit werden die dateien runtergeladen, als quelle kommt die url rein, und pziel ist der lokale pfad, zb c:\test.jpg

die procedure wird in ner schleife aufgerufen, so ca 10 mal je nachdem was da an arbeit abzuarbeiten ist.

das problem ist, das manchmal, obwohl die bilder unter der url zu finden sind, die bilder bei mir lokal 0kb groß sind, also gab es da einen übertragungsfehler? der server ist immer der selbe (von mir) also kanns nich an fehlenden rechten liegen.

habe bemerkt das bei nem kumpel, der isdn hat, das problem häufiger auftritt!
was kann ich gegen die 0kb dateien unternehmen?

habt ihr da nen tipp?
danke

Falls du doch noch einmal die Indis nutzen willst hau einfach am ende ein
IdHTTP_download.Request.Clear; rein und dann geht’s 

Gruss Wolle


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:16 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