AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi jpg mit idhttp downloaden --> jpg kaputt ??? warum das?
Thema durchsuchen
Ansicht
Themen-Optionen

jpg mit idhttp downloaden --> jpg kaputt ??? warum das?

Ein Thema von guitar1 · begonnen am 16. Aug 2007 · letzter Beitrag vom 16. Aug 2007
Antwort Antwort
guitar1

Registriert seit: 9. Sep 2006
65 Beiträge
 
Turbo Delphi für Win32
 
#1

jpg mit idhttp downloaden --> jpg kaputt ??? warum das?

  Alt 16. Aug 2007, 21:45
hi,

ich downloade eine liste von jpg's mit hilfe von idHTTP, soweit klappt auch alles, die datei kommt auch im richtigen verzeichnis an. wenn ich mir die datei dann allerdings genauer ansehe ist sie statt der eigentlichen ca 1000kb nur ca 12kb groß, und will ich sie mit irfanview öffnen kommt die meldung das der datei header nicht mehr lesbar ist ?!

Hat jemand eine idee woran das liegen könnte? wenn ich denn link in den browser eingeben komm ich zu dem bild und es ist alles in ordnung!, also am bild lieg es schon mal nicht, auch der link den idhttp bekommt ist der richtige.

mfg
andreas

PS: das ist das erste mal das ich mit indy arbeite, aber ich habe es nazu 1:1 aus einem beitrag hier im forum abgetippt, nichts desto troz ist hier noch mal ein bisschen code:

Delphi-Quellcode:
for I := 1 to pdl.Count - 1 do //i = 1 da der erste eintrag in dieser stringlist die url ist
  begin

    if Abbruch then
    begin
      break;
    end;

    url := pdl[0]+'/'+pdl[i];

    label10.Caption:= pdl[i];

    if edit4.Text = 'then
    begin
      Ziel := Pfad+'\'+pdlName+'\'+pdl[i];
    end
    else
    begin
      Ziel := Pfad+'\'+pdlName+'\'+Edit4.Text+' '+
                nullen(picnr)+IntToStr(picnr)+ExtractFileExt(pdl[i]);
    end;

    try
      lStream := TFileStream.Create(Ziel, fmCreate or fmShareDenyNone);
    try
      idHTTP1.Get(URL, lStream);
    finally
      lStream.Free;

    end;
    finally

    end;
    Memo1.lines.Add(TimeToStr(now)+' : Download von "'+pdl[i]+'" war erfolgreich.');
    picnr:= picnr+1;

    p:= round((100/pdl.Count) * (i));
    gauge1.Progress := p;

  end;
EDIT: zwei unrelevate sachen im code geändert
http://www.myspace.com/metalinc1
http://andi1007.funpic.de
Thomann Cyberstore mein Tipp für alle die etwas für den Musikgebrauch brauchen =)
  Mit Zitat antworten Zitat
IceTube
(Gast)

n/a Beiträge
 
#2

Re: jpg mit idhttp downloaden --> jpg kaputt ??? warum da

  Alt 16. Aug 2007, 23:25
hmm...komische sache, eigentlich müsste es gehen...=!=

Fehler habe ich keinen gefunden, außer ein paar "Schönheitsfehler" - vielleicht sind ja diese das Problem?=

Na jedenfalls besser ich die mal aus...

Delphi-Quellcode:
for I := 1 to pdl.Count - 1 do //i = 1 da der erste eintrag in dieser stringlist die url ist
begin

//Http Header einstellen - Eigenschaften von idHttp, kann ich jetzt nicht auswendig-----------!!!
//aber ungefähr heißen die soo, bei manchen Seiten funkt das sonst nicht.... -----------------!!!
    idHttp1.AllowCookies := false;
    idHttp1.HandleRequest := true;

//Eine Zeile genügt denk ich, umso mehr umso unübersichtlicher :)
    if Abbruch then break;

    url := pdl[0]+'/'+pdl[i];

    label10.Caption:= pdl[i];

    if edit4.Text = 'then
    begin
      Ziel := Pfad+'\'+pdlName+'\'+pdl[i]; //hmmm....versteh ich nicht, kein DateiTyp------!!!
    end
    else
    begin
      Ziel := Pfad+'\'+pdlName+'\'+Edit4.Text+' '+
                nullen(picnr)+IntToStr(picnr)+ExtractFileExt(pdl[i]);
    end;

    
    // Vielleicht war da das Problem?!?------------------------------------------------!!!
    try
      lStream := TFileStream.Create(Ziel, fmCreate or fmShareDenyNone);
      idHTTP1.Get(URL, lStream);
    finally
      lStream.Free;
      //sehr wichtig!!! --> hab ich jetzt vergessen....
      idhttp1.Disconnect;
    end;

    Memo1.lines.Add(TimeToStr(now)+' : Download von "'+pdl[i]+'" war erfolgreich.');
    picnr:= picnr+1;

    p:= round((100/pdl.Count) * (i));
    gauge1.Progress := p;

  end;

Weiß nicht ob das wirklich das Problem ist, aber probieren kann man es ja....

Edit: Du musst die Verbindung vom idHttp1 auch wieder trennen....!!!

lg
  Mit Zitat antworten Zitat
guitar1

Registriert seit: 9. Sep 2006
65 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: jpg mit idhttp downloaden --> jpg kaputt ??? warum da

  Alt 16. Aug 2007, 23:42
@ icetube:

erstmal danke für's schönheitsfehler ausbessern, aber gebracht hat's leider nix, immer noch das gleiche problem!
Zitat:
Delphi-Quellcode:
    begin
      Ziel := Pfad+'\'+pdlName+'\'+pdl[i]; //hmmm....versteh ich nicht, kein DateiTyp------!!!
    end
der dateityp ist in der liste schon enthalten, also das sind die namen der bilder auf gelistet, in dem stil :

Code:
http://bilder.de/irgentwas
Bild1.jpg
Bild2.jpg
...
die ganzen url's sehn dann etwa so aus: http:/ /bilder.de/irgentwas/Bild1.jpg (das leerzeichen ist nur da damits keinen link ergibt xD)

zum EDIT:
wie geht das?
http://www.myspace.com/metalinc1
http://andi1007.funpic.de
Thomann Cyberstore mein Tipp für alle die etwas für den Musikgebrauch brauchen =)
  Mit Zitat antworten Zitat
IceTube
(Gast)

n/a Beiträge
 
#4

Re: jpg mit idhttp downloaden --> jpg kaputt ??? warum da

  Alt 16. Aug 2007, 23:48
hmm...schade...dann kann ich dir auch nicht weiter helfen, bei mir funkts bis jetzt immer...

das trennen machst du mit "idHttp1.Disconnect"

lg
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: jpg mit idhttp downloaden --> jpg kaputt ??? warum da

  Alt 16. Aug 2007, 23:53
Ich kenne mich mit den Indys gar nicht aus, aber liefert idHTTP1.Get(URL, lStream); garantiert immer die komplette Datei und nicht nur den aktuell empfangenen Teil? Bei den TServerSocket/TClientSocket ist dies Verhalten zumindest so und dort würde man dann mit dem Code durch das fmCreate ständig die bisher empfangenen Teile überschreiben.
  Mit Zitat antworten Zitat
guitar1

Registriert seit: 9. Sep 2006
65 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: jpg mit idhttp downloaden --> jpg kaputt ??? warum da

  Alt 16. Aug 2007, 23:57
also da war mir ein ganz dummer fehler unterlaufen
ist mir aber erst beim schreiben der letzten antwort aufgefallen, ich hatte in der liste die url mit ".html" am ende gespeichert und da der link dann .../bilder.html/bild1.jpg war konnte es gar nicht, gehn.
http://www.myspace.com/metalinc1
http://andi1007.funpic.de
Thomann Cyberstore mein Tipp für alle die etwas für den Musikgebrauch brauchen =)
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz