Autor Beitrag
sky21
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 141

W7
D2010, XE2
BeitragVerfasst: Mo 22.03.10 10:42 
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] www.delphigroups.info/2/3/214622.html
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mo 22.03.10 13:41 
Wenn keine Daten mehr übertragen werden, was willst du dann abbrechen?

_________________
PROGRAMMER: A device for converting coffee into software.
Xearox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 260
Erhaltene Danke: 3



BeitragVerfasst: 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.