Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Datei runterladen + Progressbar ? (https://www.delphipraxis.net/3498-datei-runterladen-progressbar.html)

Pyr0cracker 16. Mär 2003 10:41


Datei runterladen + Progressbar ?
 
Hallo,
wie kann ich eine datei aus dem internet runterladen und den fortschritt anhand einer progressbar anzeigen?
hab schon das beispiel in der codelib ausprobiert aber geht es nicht auch einfacher?
danke schonmal!

jbg 16. Mär 2003 10:46

Natürlich geht es einfacher. Du musst nur die Indy-Komponente TIdHTTP einsetzen. Dort kannst du die Ereignisse OnWorkBegin und OnWork sowie OnWorkEnd abfangen und die Progressbar entsprechend setzen.

Pyr0cracker 16. Mär 2003 11:01

wie soll ich denn das machen?
ich kann machen das er bei workbegin die progbar auf 0 und bei workend auf 100 setzt. ich kann auchmachen das bei work die progbar hochzählt.
aber wie wie soll ich machen das er hochzählt und dann bei 100 ankommt wenn die datei fertig runtergeladen ist?

jbg 16. Mär 2003 12:20

Schon mal IdHTTP.Get() aufgerufen? Diese Funktion löst OnWorkBegin aus und für jede Datenladung ein OnWork. Am Schluss, wenn der Download beendet ist, wird OnWorkEnd ausgelöst.

Pyr0cracker 16. Mär 2003 12:28

mein ich doch , aber wie soll ich die progressbar entsprechend dem download fortschritt zählen lassen?

jbg 16. Mär 2003 19:07

Na da gibt es mehrere Möglichkeiten. Du könntest sie z.B. rückwärts laufen lassen, oder einmal auf und wieder ab.

Im Ernst: Was ist daran so schwer, die Eigenschaft Max auf die Dateigröße zu setzen, die du von OnWorkBegin bekommst und im OnWork dann die Eigenschaft Position anzupassen?

elch 21. Mär 2003 18:11

g

jbg, warum nich gleich

ArmyMan 15. Aug 2004 13:22

Re: Datei runterladen + Progressbar ?
 
Gibt es zu dieser sache auch einen beispiel quelltext??

ArmyMan

MasterC 15. Aug 2004 13:34

Re: Datei runterladen + Progressbar ?
 
Guck mal hier.

ArmyMan 15. Aug 2004 13:46

Re: Datei runterladen + Progressbar ?
 
Was muss ich im IdHTTP1.Get(????????) reintippen??????

ArmyMan

fkerber 15. Aug 2004 13:50

Re: Datei runterladen + Progressbar ?
 
Hi!

Die Adresse der Datei, die du runterladen willst.

Ciao Frederic

ArmyMan 15. Aug 2004 13:52

Re: Datei runterladen + Progressbar ?
 
Nee sorry. Dass wusste ich schon..

Aber hier??

IdHTTP1.BeginWork(?????)

ArmyMan

ArmyMan 15. Aug 2004 14:15

Re: Datei runterladen + Progressbar ?
 
wie kann ich source und destination datei angeben???

IdHTTP1.Get(sourcefile)

destinationfile????

ArmyMan

ArmyMan 15. Aug 2004 15:37

Re: Datei runterladen + Progressbar ?
 
Halloo???

wie kann ich definieren wo die datei die heruntergeladen wird hin geht?

destination??

Bitte helft mir!

Thx ArmyMan

Aenogym 15. Aug 2004 15:44

Re: Datei runterladen + Progressbar ?
 
hi armyman,

Tidhttp.get() gibt es zweimal also überladen.
bei der ersten variante gibst du als parameter die URL an. da die erste variante eine funktion ist, gibt sie die heruntergeladene datei als string zurück. also:

Delphi-Quellcode:
var html: string;
begin
  html := idhttp1.get('http://web.de');
  memo1.lines.text := html;
end;
und schon hast du im memo1 den quelltext der web.de startseite (gut für einen eigenen browser)!

die zweite variante geht so:


Delphi-Quellcode:
var stream: TFileStream;
begin
  stream := TFileStream.Create('c:/datei.html', ...);
  TidHttp.get('http://web.de', stream);
  stream.free;
end;
(achtung: beim tfilestream.create fiel mir grad nciht der zweite paramatere in...)
aber so geht das halt: erst einen stream erstellen, dann mit diesem get in den stream laden und fertig (gut zum richtigen speichern der datei).

Aenogym

PS: du hast aber ganz schön gespammt ;)

MasterC 15. Aug 2004 16:04

Re: Datei runterladen + Progressbar ?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe dir mal ein Beispiel gemacht, viel Spaß.

ArmyMan 15. Aug 2004 16:10

Re: Datei runterladen + Progressbar ?
 
Danke. Ist aber doch nicht 100%ig dass was ich will.

Ich will das man 2 edits hat. 1 für die quell, 1 für die ziel datei.

Dann wenn man auf den download button clickt ladet es die quell datei herunter ins ziel verzeichnis.

Wie geht das??

ArmyMan

MasterC 15. Aug 2004 16:12

Re: Datei runterladen + Progressbar ?
 
Wie jetzt? Genau das gleiche habe ich in meinem Beispiel gemacht!

ArmyMan 15. Aug 2004 16:13

Re: Datei runterladen + Progressbar ?
 
Super! Vielen Vielen Dank!!!

ArmyMan

ArmyMan 15. Aug 2004 16:29

Re: Datei runterladen + Progressbar ?
 
Wie kann ich machen dass es auch mit ftp geht??

ArmyMan

Luckie 15. Aug 2004 16:35

Re: Datei runterladen + Progressbar ?
 
Bei einer neuen Frage, erstell bitte einen neuen Thread.

MasterC 15. Aug 2004 16:58

Re: Datei runterladen + Progressbar ?
 
Schau dir mal die Komponente IDFTP an.

Hier im Forum suchenftp download [df]ftp download[/df]

Luckie 15. Aug 2004 17:01

Re: Datei runterladen + Progressbar ?
 
Ich sagte doch es soll ein neuer Thread erstellt werden. Also mache ich jetzt hier zu.


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