bei Indy (IdFTP) findet das OnWork-Event nie statt (bitte 2. Post lesen)



  • Mein Programm bleibt während des Downloads auf einigen Systemen einfach nach dem Download stehen.

    Hier der verantwortliche Code:
    Kann es sein dass ich an dieser Stelle das Try...Catch weglassen sollte?

    try
            {
            IdFTP1->Get(ListView1->Items->Item[0]->Caption,LocalTxt->Text+ListView1->Items->Item[0]->Caption,true,false);
            }
            catch (Exception &exception)
            {
            }
    

    Des weiteren wird beim OnWork-Event noch der Geschwindigkeitszähler aktualisiert was hier jedoch keine Rolle spielen sollte.



  • OK ich kann das Problem jetzt genauer beschreiben.

    Also es tritt bei einigen Personen auf, dass bei einem FTP-Download nie das OnWorkEnd-Event stattfindet.

    Indy lädt es brav bis zum Ende,doch sobald es beispielsweise vorm Ziel steht 1602 von 1604 kb runtergeladen wurden bei einer RecvBuffer-Größe von 16 kb bleibt es einfach stehen.

    Habe es auch schon versucht mit dem OnStatus-Event hinzubekommen doch es regt sich nix.

    Hat Jemand ne Lösung oder weiß jemand wie ich es manuell prüfen kann ob der Download beendet wurde?

    P.S. Die Dateigröße kann ich nicht prüfen, da die Anwendung selbst auf den Download zugreift.



  • Hedgehog,

    Hedgehog schrieb:

    ..dass bei einem FTP-Download nie das OnWorkEnd-Event stattfindet.

    nehmen wir mal an, das ist ein bug - währe nicht das erste mal bei Indy. Dann verstehe ich die Frage noch nicht ganz. Willst Du jetzt bloß den Moment abpassen, wenn der Download beendet wurde oder willst Du am Schluß prüfen, ob der Download auch komplett erfolgt ist?
    Was meinst Du mit

    Hedgehog schrieb:

    ...da die Anwendung selbst auf den Download zugreift.

    ?



  • Ich will eigentlich nur wissen wann der Download beendet ist, damit der nächste gestartet werden kann.

    Dass der Download komplett ist weiß ich ja (habe ich per Remote-Desktop auf einem Rechner geprüft bei dem dieser Fehler auftritt).

    Solange die Datei empfangen wird ist sie bei mir selbst für Lesezugriffe gesperrt.



  • Hedgehog schrieb:

    Ich will eigentlich nur wissen wann der Download beendet ist

    Der Download läuft doch, soweit ich weiß, nicht in einem eigenen Thread. Wenn die Get-Funktion abgearbeitet wurde, weißt Du also auch, daß der Download beendet wurde - oder sehe ich das jetzt irgendwie schief?


Anmelden zum Antworten