![]() |
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Solltest du
![]() |
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
@Lamy:
du nimmst einfach URLDownloadToFile und wärdens des Downloads wird die Prozedur, wo der Befehl drin ist angehalten, was denkst du denn, warum wird hier oftmals URLDownloadToFile in Threads auslagen? (Weil es halt das Prog anhält - du darfst den Download halt nur nicht ein einem Thread auslagern) @Remote1: Weil z.B. die Datei defekt sein könnte, oder man sich eine neue Version einer Datei besorgt... [ADD] Och menno, Luckie hat sich vorgedrängelt -.- [ADD2] @Lamy: Zitat:
|
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Delphi-Quellcode:
PROCEDURE TForm1.FormCreate(Sender: TObject);
VAR Datei, Ziel: PChar; Programmverzeichnis: STRING; BEGIN Programmverzeichnis := ExtractFilePath(Application.ExeName); TRY Label2.Caption := 'Alte Programmdatei wird gelöscht'; DeleteFile(Programmverzeichnis + '\UrFtpclient.exe'); Label1.Caption := 'Bitte warten!'; Datei := 'http://www.a.toolsnfun.de/urftpclient.exe'; Ziel := PChar(Programmverzeichnis + '\urftpclient.exe'); UrlDownloadToFile(NIL, Datei, Ziel, 0, NIL); IF FileExists(Programmverzeichnis + '\urftpclient.exe') THEN Label1.Caption := 'updatedatei heruntergeladen'; ELSE BEGIN sleep(5000); Label1.Caption := 'Bitte warten Sie bis die Updatedatei heruntergeladen ist...'; END; IF FileExists(Programmverzeichnis + '\urftpclient.exe') THEN Label1.Caption := 'updatedatei heruntergeladen'; EXCEPT showmessage('Download abgebrochen'); END; END; Ich weiß nicht was ein Thread ist aber der hier wartet nicht bis die Datei runtergeladen wurde... |
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Die Code-Lib enthält doch ein Beispiel von "UrlDownloadToFile" mit Download-Fortschritt. (Link, s. Beitrag von Luckie). Daraus müsste sich doch was machen lassen. :)
|
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Ich habe ja eher die Befürchtung, dass du deine Labels gar nichts siehst, da sie in OnCreate der Form noch gar nicht angezeigr werden.
|
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Oh nein :/
Ich bin so dämlich... Naja, der Fehler hat sich von Selbst aufgelöst, bitte fragt mich nicht worans gelegen hat.... :wall: @ Luckie: Stimmt ^^ Aber wie kann ich in einem Label anzeigen, dass der die Datei zur Zeit runterlädt? |
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
1. Bei mir wartet diese Prozedure
2. ist das doch nicht die, die du im Proggi hast, denn diese hat Fehler drin (nicht compilierbar)
Code:
3. kann es sein. das die Datei (auf'm Server) nicht existiert?
IF FileExists(Programmverzeichnis + '\urftpclient.exe') THEN
Label1.Caption := 'updatedatei heruntergeladen'[color=red][b];[/b][/color] ELSE ... Das dürfte eigentlich reichen:
Delphi-Quellcode:
[ADD]
PROCEDURE TForm1.FormCreate(Sender: TObject);
VAR Programmverzeichnis: STRING; BEGIN Programmverzeichnis := ExtractFilePath(Application.ExeName); TRY Label2.Caption := 'Alte Programmdatei wird gelöscht'; Application.ProcessMessages; DeleteFile(Programmverzeichnis + '\UrFtpclient.exe'); Label1.Caption := 'Bitte warten!'; UrlDownloadToFile(NIL, 'http://www.a.toolsnfun.de/urftpclient.exe', PChar(Programmverzeichnis + '\urftpclient.exe'), 0, NIL); IF FileExists(Programmverzeichnis + '\urftpclient.exe') THEN Label1.Caption := 'updatedatei heruntergeladen'; EXCEPT showmessage('Download abgebrochen'); END; END; Zitat:
und dann :
Delphi-Quellcode:
Wir fragen dennoch, den wir lernen auch gern und von Fehlern lernt es sich am Besten.
Application.ProcessMessages;
|
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Zitat:
![]() |
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Zitat:
Zu 2: Ne, hatte das nicht so in der Prozedur drin, war hier nur'n Tippfehler Zu 3: Ja, das war mein Fehler :duck: *schäm* Zu 4: Danke :chat: Zu 5: ? :gruebel: |
Re: Herausfinden ob eine Datei fertig heruntergeladen ist
Zitat:
(Also die Datei war nicht da, oder unter einem anderenn Namen?) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:20 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