![]() |
browserdownload automatisch starten
hallo leutz, ich hab auf meiner form den embeddedwb und mich interessiert wie es geht dass der browser eine datei einfachso runterlaed wenn auf das link geklickt wurde:)
ich meine wenn man im browser zb auf den button "download" klickt dass die datei von alleine auf ein best. verzeichniss geladen wird ohne erst zu fragen ob und wo genau hin damit wie es der IE fuer gewoehnlich macht:) waere euch sehr verbunden...da o0o |
Re: browserdownload automatisch starten
Im OnBeforenavigate-Ereignis ein TIdHTTP-Objekt instantiieren und die in der URL-Konstante übergebene Adresse herunterladen. Die Konstante "Cancel" auf False setzen um den Download-Dialog vom IE zu blockieren. Ganz einfach also ;-)
|
Re: browserdownload automatisch starten
lol naja thx fuer die antwort aber um ehrlich zu sein verstehe ich es nichtso^^
also ich meine wie ich es mache...hab vom browser nicht all zu viel ahnung. wenn ja so easy ist haste vllcht ein beispiel auf lager?^^ da o0o |
Re: browserdownload automatisch starten
Selektiere den Webbrowser auf deinen Form-Designer. Im Objektinspektor klickst du auf "Ereignisse" und dann beim OnbeforeNavigate im weißen Feld daneben doppelklicken. Jetzt folgendes reinschreiben:
Delphi-Quellcode:
Um IdHttp benutzen zu können musst du die unit IdHttp und idMessages einbinden.
var
dl: TidHttp; fs: TFileStream; NURL: String; begin NURL := URL; //Konstante vom Ereignis in einen String speichern dl := TIdHTTP.create; //IdHTTP erstellen fs := TFileStream.Create('C:\wodiedateihinsoll.txt', fmCreate); //FileStream erstellen und einen Pfad angeben, wo die Datei gespeichert werden soll. dl.get(NURL, fs); //Saugen dl.Free; //Speichern freigeben fs.Free; // " Cancel := True; //Webbrowser stoppen damit nicht der Download-Dialog kommt end; |
Re: browserdownload automatisch starten
ich danke dir dass du dir die arbeit gemacht hast es so ausfuehrlich zu gestalten^^
aber was ich eig. brauch ist wenn ein download im browser gestarted wird einfach runtergeladen wird^^ bei deinem code koennte das sogar klappen nur das problem ist man kann nicht mehr surfen da alle sites runtergeladen werden^^ wenn du noch das hinbekommen koenntest waere ich dir sehr dankbar:) da o0o |
Re: browserdownload automatisch starten
Zitat:
Delphi-Quellcode:
if ExtractFileExt(NURL) = 'exe' then
begin //saugen... end; |
Re: browserdownload automatisch starten
joar wenn das so einfach waere wuerde ich jetzt nicht weiternerven:)
also ich hab das mal probiert:
Delphi-Quellcode:
aber der download dialog kommt immernoch...mach ich was falsch bzw was?^^
if ExtractFileExt(NURL) = 'gz' then
begin NURL := URL; //Konstante vom Ereignis in einen String speichern dl := TIdHTTP.create; //IdHTTP erstellen fs := TFileStream.Create('C:\backup.gz', fmCreate); //FileStream erstellen und einen Pfad angeben, wo die Datei gespeichert werden soll. dl.get(NURL, fs); //Saugen dl.Free; //Speichern freigeben fs.Free; // " Cancel := True; //Webbrowser stoppen damit nicht der Download-Dialog kommt end; da o0o |
Re: browserdownload automatisch starten
Zitat:
|
Re: browserdownload automatisch starten
hmm also wenn ich ein punkt davor mache klappt es auch nicht:(
also wie ich mir den rueckgabewert anschaue ka ich habs mal damit probiert: showmessage(ExtractFileExt(NURL)); und showmessage(NURL); bei beiden war die msgbox leer... da o0o /edit: ok ich habs jetzt soweit dass mir die dateiendung angezeigt wird...es ist .php^^ kann man da noch was machen?... o0o |
Re: browserdownload automatisch starten
Probier mal einen Link der direkt auf einen Datei zeigt. Du hast bisher wahrscheinlich nur Downloads über PHP-Scripte ausprobiert. Ansonsten bietet der WebBrowser so viele Ereignisse -> Schau dir das doch einfach mal an.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:36 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