Entwickler-Ecke

Internet / Netzwerk - IdFTP.Abort für Profis


sky21 - Mo 22.03.10 10:42
Titel: IdFTP.Abort für Profis
Hi all

Ich habe ein grösseres Problem mit dem Abbrechen einen FTP Put Transfers zu einen Microsoft IIS FTP Server.

Fakt ist, dass Abort() während eines Put() Vorgangs in seltenen fällen zu einem Applikaionsabsturz führt. Der Put() Vorgang ist während dieser Zeit blockiert und daher erfolgt der Aufruf von Abort() von einem anderen Thread aus.

Gemäss einem Post von Indy-Entwickler "Gambit" sollen die OnWork() Events für das Abbrechen verwendet werden [1]. Mein Problem ist jetzt, dass der Vorgang eigentlich nur dann abgebrochen wird, wenn keine Daten mehr übertragen werden. Folglich wird das OnWork-Event auch nie (mehr) ausgelöst. Toll oder?

Was kann man hier tun?


[1] http://www.delphigroups.info/2/3/214622.html


Xentar - Mo 22.03.10 13:41

Wenn keine Daten mehr übertragen werden, was willst du dann abbrechen?


Xearox - Mo 22.03.10 14:41

Er meint, während der Übertragung ist alles andere Blockiert, also eingefroren.
Und wenn man es dann währenddessen abbrechen will, passiert nichts, erst nachdem die Übertragung vervollständigt ist.