AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Wie beendet man eine eigene Anwendung richtig?

Wie beendet man eine eigene Anwendung richtig?

Ein Thema von smart · begonnen am 25. Mai 2007 · letzter Beitrag vom 25. Mai 2007
Antwort Antwort
Seite 2 von 2     12
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Wie beendet man eine eigene Anwendung richtig?

  Alt 25. Mai 2007, 13:26
Wenn Formulare zur laufzeit ohne Parent erstellt werden, werden diese nicht richtig Freigegeben. Zugegeben ist besser als HALT.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#12

Re: Wie beendet man eine eigene Anwendung richtig?

  Alt 25. Mai 2007, 13:29
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von halinchen
halinchen

Registriert seit: 13. Jun 2006
508 Beiträge
 
Delphi 2007 Professional
 
#13

Re: Wie beendet man eine eigene Anwendung richtig?

  Alt 25. Mai 2007, 13:43
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.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#14

Re: Wie beendet man eine eigene Anwendung richtig?

  Alt 25. Mai 2007, 17:00
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: Wie beendet man eine eigene Anwendung richtig?

  Alt 25. Mai 2007, 17:10
Wäre da nicht FreeAndNil am besten? Daran hätte ich pauschal gedacht.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:33 Uhr.
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