Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wenn Windows geschlossen wird, welches Ereigniss wirkt? (https://www.delphipraxis.net/38182-wenn-windows-geschlossen-wird-welches-ereigniss-wirkt.html)

MisterNiceGuy 15. Jan 2005 21:30


Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
Hi, wenn Windows beendet wird soll mein Programm vorher noch eine Datei speichern. Aber onClose funktioniert da nicht, da Windows den Prozess zu "killen" und nicht zu schließen scheint.
Kann mir da einer helfen? :?
Bestimmt! :???:

jfheins 15. Jan 2005 21:32

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
Delphi-Referenz durchsuchenOnCloseQuery

Ultimator 15. Jan 2005 21:37

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
In diesem Thread werden die Messages genennt, die Windows vorm Herunterfahren verschickt.

Musst nur noch ne Prozedur drauf reagieren lassen ;-)

Robert Marquardt 16. Jan 2005 05:45

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
Das Wichtigste ist das nach WM_ENDSESSION kein WM_QUIT mehr kommt und damit kein OnDestroy etc.
Man muss also eventuelle Handler wie FormDestroy selbst aufrufen.

mirage228 16. Jan 2005 08:01

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
Zitat:

Zitat von Robert Marquardt
Das Wichtigste ist das nach WM_ENDSESSION kein WM_QUIT mehr kommt und damit kein OnDestroy etc.
Man muss also eventuelle Handler wie FormDestroy selbst aufrufen.

Hi,

ich glaube dieser Bug wurde in dem Update 1 für Delphi 7 behoben :gruebel:

mfG
mirage228

Luckie 16. Jan 2005 11:15

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
In MSDN-Library durchsuchenWM_ENDSESSION ist die Wiese so wie so schon gemäht. Wenn man noch was machen will dann wäre, wenn Windows MSDN-Library durchsuchenWM_QUERYENDSESSION rumschickt, der richtige Moment.

MisterNiceGuy 16. Jan 2005 12:17

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
Gilt das selbe für das Schließen per Task-Manager?

jfheins 16. Jan 2005 12:29

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
Wenn du den Prozess beendest, also abschießt, bekommt dein Programm davon gar nichts mit ...

Robert Marquardt 16. Jan 2005 15:23

Re: Wenn Windows geschlossen wird, welches Ereigniss wirkt?
 
WM_QUERYENDSESSION ist ungeeignet.
Schliesslich weiss man nicht ob nicht ein nachfolgendes Programm den Prozess nicht abbricht.
Eine Menge Programme (besonders Trayapplikationen) machen das, aber es ist trotzdem falsch.

Das Schliessen per Taskmanager ist erst der Versuch das Programm geordnet zu beenden indem per
SendMessageTimeout geprueft wird ob die Messagepumpe ds Programms noch laeuft.
Wenn nicht wird das Programm kalt abgeschossen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 Uhr.

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