zum Beenden:
Application.Terminate ist ein sehr sehr schlechter Stil. Stecke den Download in eine Extra Funktion, die einen boolischen R+ckgabewert hat. Ist der Wert WAHR, dann fahre fort, ansonsten löschen und beenden. Aus der Funktion brichst du, nachdem du Result auf FALSE gesetzt hast mit Exit aus.
Zum Beenden empfehle ich dir:
- Form.Close
- PostQuitMessage
- Halt, welches dann aber nicht aufräumt (eher doch nicht so zu empfehlen)
Bernhard
Nochwas: Konstruktoren haben in Speicherschutzblöcken nichts verloren. Entweder es klappt auf anhieb oder nicht. Wenns nicht klappt, schlägt auch .Free auf jeden Fall fehl (da irendwie nicht <> nil).