![]() |
Problem bei Imagekomponente Loadfromfile via http
Hallo,
Die Imagekomponente kann offensichtlich bei Loadfromfile nicht nur Bilder von der lokalen Platte, sondernn bei Eingabe einer korrekten URL auch ein Bild über http aus dem Internet laden. Beim Versuch dasgleiche programatisch zu machen, wird die Url allerdings automatich umgewandelt, von
Code:
in eine lokale Cacheadresse und mit folgender Fehlermeldung Quittiert
Image1.Picture.LoadFromFile('http://Domainname/_bilder/kontak_01.jpg');
Zitat:
geht. Ich finde es ja auch nett, daß er automatisch versucht, das Bild aus dem Cache zu laden, wäre aber praktisch, wenn Windows die Umrechnung in die Cacheadresse korrekt durchführen würde. Weiß da jemand Rat? Grüsse Woki |
Re: Problem bei Imagekomponente Loadfromfile via http
Hi!
So geht's, allerdings wird das Bild auf der Festplatte (zwischen-)gespeichert. Aber das müsste man ja nachher wieder löschen können. Wenn jemand weiß, wie's geht, dann soll er es doch bitte hier posten. Hi! So geht's:
Delphi-Quellcode:
Gruß Matze
uses: urlmon, jpeg
... function DownloadFile(const url: string; filename: string): boolean; begin Result := urlmon.URLDownloadToFile(nil, PChar(url), PChar(filename), 0, nil) = 0; end; procedure TForm1.Button1Click(Sender: TObject); begin if DownloadFile('http://www.discount-software.ws/discount-software-images/borland-delphi-6.0-fr.jpg', 'c:\picture.jpg') then image1.Picture.LoadFromFile('C:\picture.jpg') else showmessage('Sorry, geht irgendwie nicht!'); end; [edit=Daniel B]Delphi-Tags korrigiert. Mfg, Daniel B[/edit] [edit=Matze]Code korrigiert.[/edit] |
Re: Problem bei Imagekomponente Loadfromfile via http
Hi! Ich nochmal.
Man kann jetzt in Edit1 eine URL eigeben, von der das Bild ist, gespeichert, dann wird das Bild geladen und sofort wieder von der Festplatte gelöscht So ist's jetzt richtig:
Delphi-Quellcode:
Ich hoffe, du kannst damit was anfangen. :mrgreen:
uses: urlmon, jpeg;
... function DownloadFile(const url: string; filename: string): boolean; begin Result := urlmon.URLDownloadToFile(nil, PChar(url), PChar(filename), 0, nil) = 0; end; procedure TForm1.Button1Click(Sender: TObject); begin URL:=Edit1.Text; if DownloadFile(URL, 'c:\picture.jpg') then image1.Picture.LoadFromFile('c:\picture.jpg') else showmessage('Sorry, geht irgendwie nicht!'); deleteFile('c:\picture.jpg') end; procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if key =vk_return then Button1Click(self); end; Gruß Matze [edit=Daniel B]Delphi-Tags korrigiert. Mfg, Daniel B[/edit] |
Re: Problem bei Imagekomponente Loadfromfile via http
Kannst auch mal hier gucken:
![]() |
Re: Problem bei Imagekomponente Loadfromfile via http
Hi Matze,
sorry für die späte Antwort. vielen Dank für die Ausarbeitung dieses Workarounds. Ich kann damit auf jeden Fall erstmal leben und weiterarbeiten. Es bliebe aber trotzdem interssant, warum zur Designzeit die Eingabe einer URL in TImage|Picture|laden funktioniert, aber es mit Image1.picture.loadfromfile programatisch nicht geht. Thnx Woki |
Re: Problem bei Imagekomponente Loadfromfile via http
ich grab diesen thread nochmnal aus...
ich will images ausm inet holen dazu benutz ich folgenden code:
Delphi-Quellcode:
aber es kommt IMMER fehlgeschlagen,. obwohl es das bild gibt!!!
function DownloadFile(const url: string; filename: string): boolean;
begin Result := urlmon.URLDownloadToFile(nil, PChar(url), PChar(filename), 0, nil) = 0; end; procedure TForm1.Button1Click(Sender: TObject); var i, j:integer; filename:string; begin for i:=SpinEdit1.Value to SpinEdit2.Value do begin FileName:=inttostr(i)+'.jpg'; if DownloadFile(url+filename,ShellTreeView1.Path+filename) then ListBox1.Items.Add('Erfolgreich '+filename) else ListBox1.Items.Add('Fehlgeschlagen '+filename); end; end; kann es daran liegen das ich hinter nem router sitze? |
Re: Problem bei Imagekomponente Loadfromfile via http
Moin!
Nein, mit dem Router hat es eigentlich nix zu tun, aber folgendes fällt mir dazu ein: 1. auf dem Server heissen die Bilder 01.jpg und nicht 1.jpg 2. Diese Bilder existieren schon lokal da wo sie gespeichert werden sollen und daher schlägt der Download fehl. 3. Dein Internetzugang ist für den IE nicht ordentlich konfiguriert 4. Der Server erwartet eine AUTHentication... MfG Muetze1 |
Re: Problem bei Imagekomponente Loadfromfile via http
also
1. Auaa, stimmt :wall: 2. Nein, sie existieren net 3. ist er 4. keine ahnung, ich muss mich nirgendwo einloggen wie kann ich denn 1 auf 01 bringen? also es sollen auch 2-stellige möglich sein.... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:44 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