Autor Beitrag
MDX
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 595
Erhaltene Danke: 4

Windows 8.1, Linux Debian 8, Android Lollipop
Delphi, PHP, Java (Android)
BeitragVerfasst: Mo 25.05.09 02:40 
Hallo EE-ler

wie der Titel schon sagt, habe ich leider keinen Plan von Threads.
Ich möchte mit einem neuem Thread einfach einen Download starten.
Dafür müsste ich nur folgende Funktion irgendwie in den neuen Thread reinpacken.

Funktion:
ausblenden Delphi-Quelltext
1:
download(Source, Output, Url:String);					

Source=z.B.: www.delphi-forum.de/...ics/DT2009Header.png
OutPut=C:\MyFolder\test.rar
Url=www.delphi-forum.de/...de=newtopic&f=10 (Wo das Bild gefunden wurde)

Dann soll der Thread einfach die Datei runterladen und, da die Datei über nen neuen Thread heruntergeladen wird, das Programms soll nicht hängen.

Hoffe ihr habt ne SIMPLE Lösung

MFG
David

BTW: Hab mir schon etliche Tutorials durchgelesen, auch das von Luckie, aber ich raffs einfach nicht....
uko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 220
Erhaltene Danke: 1

Win XP, VISTA, WIndows 7
Delphi 2007/2010 Prof
BeitragVerfasst: Mo 25.05.09 04:42 
Hi,

Threadklasse erstellen und in der Execute Methode den Download rein.
www.delphi-library.d...t=threads%20tutorial


Grüße,
Uli
MDX Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 595
Erhaltene Danke: 4

Windows 8.1, Linux Debian 8, Android Lollipop
Delphi, PHP, Java (Android)
BeitragVerfasst: Mo 25.05.09 15:47 
Und wie übergebe ich der Execute Methode bitte die 3 Parameter???
uko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 220
Erhaltene Danke: 1

Win XP, VISTA, WIndows 7
Delphi 2007/2010 Prof
BeitragVerfasst: Mo 25.05.09 16:00 
Hi,

der Execute-Methode gar nicht. Du erstellst den Thread suspended (Create-Parameter), dann übergibst Du die Parameter der Klasse, indem Du sie als Properties schreibst oder per Methode übergibst und in Feld-Variablen speicherst. Und auf die greift dann die Execute-Methode zu (Thread mit Resume starten).

Grüße,
Uli
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mo 25.05.09 16:01 
Die Parameter übergibst du nicht Execute, sondern dem Konstruktor. Dieser speichert sie dann in lokalen Feldern - und Execute kann bequem darauf zugreifen.
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Mo 25.05.09 16:33 
user profile iconMDX hat folgendes geschrieben Zum zitierten Posting springen:
Ich möchte mit einem neuem Thread einfach einen Download starten.
Dafür brauchst du keinen eigenen Thread, es sollte schon eine asynchrone Methode dafür geben.

Edit: Anscheinend kann Indy das nicht, merkwürdig.

_________________
>λ=