Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Image aus Web laden (https://www.delphipraxis.net/29755-image-aus-web-laden.html)

testzugang 14. Sep 2004 12:35


Image aus Web laden
 
Moin,

ich möchte in eine Image Kompo ein Bild aus dem Web laden, es anzeigen und direkt abspeichern auf der Festplatte(hatte ich vergessen)

So, das Problem ist, ich möchte vorher aussuchen welches Bild. Ich ahbe also die Standard URL und es soll sich ahlt nur die Zahl ändern. Ah ich sehs chon, ohne Code bringt das nix.

Delphi-Quellcode:
var Bildnummer,Adresse, Download: String;
begin
Bildnummer:=Edit1.text;
Adresse:='http...'
Download:='Adresse'+Bildnummer+'.jpg'
end;
So, die gekürzte Fassung. Also eine Bildnummer wird ausgelesen, und als textvar verarbeitet.
Daraus soll sich dann die Adresse zusammensetzen und diese Var "Download" möchte ich downloaden, geht aber nicht :(

Cybo

Matze 14. Sep 2004 12:44

Re: Image aus Web laden
 
Welchen Code benutzt du denn zum Downloaden?

Was geht denn nicht? Fehlermeldungen?


Edit:
Über die DP-Suche (Hier im Forum suchenBild Internet) findet man Beispiele zum herunterladen, z.B. Hier ;)

testzugang 14. Sep 2004 12:49

Re: Image aus Web laden
 
Delphi-Quellcode:
uses UrlMon;
...
UrlDownloadtofile(nil,Quelle,Ziel,0,nil);
So, ich habe es dann umgewandelt, die Quelle sollte ja eine Var sein,

also
Delphi-Quellcode:
UrlDownloadtofile(nil,Download,Bildnummer+'.jpg',0,nil);
es kommt dann etwas mit Inkompatible Typen String und Pchar

Eine allgmeine Lösung zum downlaod mit var wäre mir sehr hilfreich.

Für das anzeigen des Bildes:
Delphi-Quellcode:
Image1.Picture.LoadFromFile('http://adresse.de/bilder/'+Bildnummer+'.jpg');
Gibt einen dicken Fehler, das programm friert ein :(

Cybo

Matze 14. Sep 2004 12:57

Re: Image aus Web laden
 
Zitat:

Zitat von testzugang
es kommt dann etwas mit Inkompatible Typen String und Pchar

Dann mach es so:
Delphi-Quellcode:
UrlDownloadtofile(nil, PChar(Download), PChar(Bildnummer+'.jpg'), 0, nil);

testzugang 14. Sep 2004 12:57

Re: Image aus Web laden
 
getestet und das funktioniert:

Delphi-Quellcode:
var Adresse,Download:String;
begin
Adresse:='http...';
Bildnummer:=Edit1.text+'.jpg';
Download:=Adresse+Bildnummer ;
URlDownloadtofile(nil, PChar(Download), PChar(Bildnummer+'.jpg'), 0, nil);
So, und wie kann ich das so auch direkt anzeigen lassen? da könnte ich ja eigentlich das vond er HDD direkt einladen. ÜPerfekt, geht


DANKE

mschaefer 14. Dez 2004 21:37

Re: Image aus Web laden
 
Hallo,
kann man ein Bild aus einer Website eigentlich auch über TClientSocket laden?
Fände es interessant, wenn es eine Möglichkeit ohne das Zwischenspeichern gäbe,
denn ich würde einige Bilder gerne wiederholt in eine Datenbank eintragen.

Grüße // Martin

Aenogym 14. Dez 2004 21:48

Re: Image aus Web laden
 
Zitat:

Zitat von mschaefer
Hallo,
kann man ein Bild aus einer Website eigentlich auch über TClientSocket laden?
Fände es interessant, wenn es eine Möglichkeit ohne das Zwischenspeichern gäbe,
denn ich würde einige Bilder gerne wiederholt in eine Datenbank eintragen.

Grüße // Martin

natürlich. du musst nur mittels SendBuf() die richtigen http-header senden, und auch dementsprechend auf die http-header des servers reagieren, die dann bei dir ankommen.

zum thema direkt anzeigen:
TidHTTP benutzen und die datei in einen stream herunterladen. diesen kann man dann per TImage.LoadFromStream() öffnen.

Aenogym


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