Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#14

Re: Application.Terminate in Vista

  Alt 30. Apr 2007, 14:35
Zitat von Christian Seehase:
Zitat von PeterPanino:
Der Aufruf von Application.Terminate erfolgt im OnCreate-Event des Hauptformulars.
das klingt für mich so, als solltest Du Deine Programmstruktur mal überdenken.
Da kann ich nur zustimmen. PostQuitMessage legt nämlich einfach eine Meldung in die Message-Queue, die vom Programm dann in der normalen Meldungsschleife abgeholt und verarbeitet wird (oder auch nicht: das "while GetMessage(...) do ..." bricht dann nämlich ab, da die Bedingung FALSE ist).

An diesen Punkt (Meldungsschleife) kommt die Anwendung aber normalerweise erst in Application.Run. Also werden alle automatisch erzeugten Formulare, Berichte und Datenmodule (alles was in der DPR-Datei vor dem Application.Run steht) zunächst noch erzeugt (laufen also durch das OnCreate), bevor dein Application.Terminate Wirkung zeigt.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat