Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wie beendet man eine eigene Anwendung richtig? (https://www.delphipraxis.net/92753-wie-beendet-man-eine-eigene-anwendung-richtig.html)

mkinzler 25. Mai 2007 12:26

Re: Wie beendet man eine eigene Anwendung richtig?
 
Wenn Formulare zur laufzeit ohne Parent erstellt werden, werden diese nicht richtig Freigegeben. Zugegeben ist besser als HALT.

SirThornberry 25. Mai 2007 12:29

Re: Wie beendet man eine eigene Anwendung richtig?
 
richtig unsauber ist keine Variante wenn man weiß was dabei geschieht und es bewusst einsetzt um die vorzuge zu nutzen.

Zur eigentlichen Frage:
Ein Programm winn linear abgearbeitet und wenn ganz am Ende angekommen wird ist das Programm zu Ende. Am besten sieht man das bei alten Konsolenanwendungen oder Batchdateien. Wenn diese die letzte Zeile abgearbeitet haben ist das Programm zu Ende.
Genau so verhält es sich auch bei deinem Programm. Um Klicks etc. zu verarbeiten haben Windowsanwendungen eine Nachrichtenschleife welche eben so lange immer wieder durchläuft bis die Quit-Message kommt. Nach der Nachrichtenschleife ist dann in der Regel das Programmende.
Mit Funktionen wie Application.Terminate kannst du diese Schleife auch beenden.
Und mit Halt wird zum Programmende gesprungen und man hat noch die Möglichkeite einen Errorcode zurück zu geben (den der Aufrufer deines Programmes dann auswerten kann).

@mkinzler: Die Begründung warum Halt schlechter sein soll würde mich interessieren (in einem seperatem Thread). Wie bereits erwähnt hat auch Halt seine Daseinsberechtigung.

halinchen 25. Mai 2007 12:43

Re: Wie beendet man eine eigene Anwendung richtig?
 
Zitat:

Zitat von mschaefer
dann schließe die Normalfenster und gib sie frei (destroy) im OnClose-Ereignis des Hauptformulars.

Eher Release aufrufen. Sonst kommen manchmal AVs, weil die Botschaftsbehandlungsroutine nicht richtig abgearbeitet.

SirThornberry 25. Mai 2007 16:00

Re: Wie beendet man eine eigene Anwendung richtig?
 
Release an der Stelle könnte nutzlos sein denn Release postet eine Message. Wenn aber dann keine Nachrichten mehr verarbeitet werden (wozu auch, es muss ja nicht mehr auf klicks etc. reagiert werden sondern nur noch aufgeräumt werden) wird auch nichts frei gegeben.

Matze 25. Mai 2007 16:10

Re: Wie beendet man eine eigene Anwendung richtig?
 
Wäre da nicht FreeAndNil am besten? Daran hätte ich pauschal gedacht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:13 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz