Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Auf Abmelden/Herunterfahren in onClose reagieren (https://www.delphipraxis.net/142347-auf-abmelden-herunterfahren-onclose-reagieren.html)

The_Unknown 26. Okt 2009 20:42


Auf Abmelden/Herunterfahren in onClose reagieren
 
Hallo,

ich versuche gerade, folgendes zu bewerkstelligen:
Mein Programm öffnet im onClose-Event des Hauptformulars eine Messagebox. Diese soll allerdings nur kommen, wenn das Programm "von Hand" beendet wird, nicht aber, wenn Windows gerade am Herunterfahren/Abmelden/Neustarten ist, schließlich will ich ja nicht das Herunterfahren verhindern ;)

Ich habe es schon mit WM_QUERYENDSESSION versucht, aber das Event wird erst *nach* dem onClose-Event ausgelöst.

Gibt es eine Möglichkeit, es anders hinzubekommen?

Thx!

Tschüss The_Unknown

thkerkmann 26. Okt 2009 20:51

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Hi,

Du musst das OnCloseQuery Event nehmen, das kommt vorher.

Gruss

The_Unknown 26. Okt 2009 21:22

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Und wie stelle ich dann im onCloseQuery-Event fest, ob gerade heruntergefahren/abgemeldet/neugestartet wird?

mkinzler 26. Okt 2009 21:24

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Der Event wird aufgerufen, wenn die Beendigung des Programmes verlangt wird

The_Unknown 26. Okt 2009 21:34

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Aber das Event wird doch auch dann aufgerufen, wenn ich das Programm "von Hand" beende, sprich das kleine X oben rechts anklicke. Und genau hier soll ja unterschieden werden, ob der Rechner gerade am Herunterfahren ist oder nicht.

XXcD 26. Okt 2009 21:58

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Ich hoffe der folgende Link hilft dir weiter:
http://www.delphipraxis.net/internal...ect.php?t=4047

gmc616 26. Okt 2009 22:02

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
kannst du nicht im WM_QUERYENDSESSION einen Boolean setzen, denn du im OnClose bzw. OnCloseQuery auswertest?

The_Unknown 26. Okt 2009 22:05

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Zitat:

Zitat von gmc616
kannst du nicht im WM_QUERYENDSESSION einen Boolean setzen, denn du im OnClose bzw. OnCloseQuery auswertest?

:gruebel: Naja, das ist, wie ich oben bereits geschrieben hatte, die falsche Reihenfolge, denn QueryEndSession kommt erst *nach* onClose, wenn es also schon zu spät ist.

Zitat:

Zitat von XXcD
Ich hoffe der folgende Link hilft dir weiter:
http://www.delphipraxis.net/internal...ect.php?t=4047

Das hilft mir dementsprechend auch nicht weiter :(

gmc616 26. Okt 2009 22:22

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Zitat:

Zitat von The_Unknown
:gruebel: Naja, das ist, wie ich oben bereits geschrieben hatte, die falsche Reihenfolge, denn QueryEndSession kommt erst *nach* onClose, wenn es also schon zu spät ist.

Hmpf ... :gruebel:

Bei mir nicht. Alles so wie' sein soll.

WMQUERYENDSESSION
OnCloseQuery
OnClose

Wäre irgendwie auch doof, wenn Windows das Programm beendet und danach erst fragt, oder ?

The_Unknown 26. Okt 2009 22:31

Re: Auf Abmelden/Herunterfahren in onClose reagieren
 
Mhm, bei mir (Windows 7 x64):
OnCloseQuery
WM_QueryEndSession

Nur weiß ich nicht, ob das immer und bei jedem so ist. Anscheinend ja nicht :gruebel:

Gibts vielleicht noch eine andere Variante, das zu lösen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 Uhr.
Seite 1 von 3  1 23      

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