FTP: Downloadfortschritt anzeigen
-
Hallo miteinander
wie kann ich, wenn ich was von einem FTP-Server lade eine Fortschrittsanzeige (Progressbar) machen, welche auch funktioniert. Die Dateien sind zum Teil sehr gross, bis zu 20MB oder ev. noch mehr, die Dateien zum Runterladen sind .rar Dateien, hier mal ein Auszug aus dem Code, Zuerst wird die Datei heruntergeladen (Connection besteht) und danach entpackt
//Lädt Datei ab dem verbundenen Server //1. Parameter = HINTERNET von der Connection //2. Parameter = Dateiname //3. Parameter = Downloadart FTP_TRANSFER_TYPE_ + ASCII oder BINARY // FTP_TRANSFER_TYPE_ASCII / FTP_TRANSFER_TYPE_ASCII //Rückgabe = bool, true falls Download OK false falls Download fehlerhaft getFile(hFTPConn, dateiTemp, FTP_TRANSFER_TYPE_BINARY); //Rar Files Binary! //FTP Connection Schliessen InternetCloseHandle(hFTPConn); //Archiv auspacken ExtractArchive(dateiTemp, EXTRACT);
hoffe jemand kann mir hier helfen
mfg danushka
-
wenn du einen code zum download der datei schreiben kannst, wird es doch wohl für dich kein problem sein, rauszufinden wie groß die zu downloadene datei ist (progressbar->max) und welcher wert zu bestimmten zeiten der fortschritt des downloads ist (Progressbar->position) ?!?
gruss
Bj
-
Wenn er das wüsste, würde er wohl nicht fragen??
-
Also, die FTP Funktionen sind sehr einfach, ich habe die nur noch ein wenig gekürzt, damit mein Code nicht wie ein Wrak mit NULL-en aussieht, die FTP Funktionen sind eigendlich nicht so schwer, habe nur getFile, putFile und die Connection in meine DLL gepackt.
Das Problem ist, die Grösse der Datei beim runterladen abzufragen, die Grösse auf dem Server sollte eigendlich kein so grosses Problem sein
mfg danushka
-
Verschoben nach WinAPI.
Tip für's nächste Mal: benutz' eine Komponente wie TIdFTP aus dem Indy-Paket. Das ist erheblich eleganter/einfacher und mit Fragen dazu wärst du auch im richtigen Forum gewesen.
-
Du darfst die Datei nicht in einem Stück herunterladen sondern in kleineren Packeten