![]() |
Trotz Bestätigung Programm mit Windows beenden
Hallo!
Bevor mein Programm beendet werden kann, muss dies durch eine Bestätigung 'vollendet' werden.
Delphi-Quellcode:
Wenn nun Windows beendet wird, während das Programm noch läuft, funktioniert dies auf Grund einer Warnmeldung nicht.
procedure THauptform.FormCloseQuery(Sender: TObject;
var CanClose: Boolean); begin if MessageDlg('Wollen Sie VPlan Plus wirklich beenden?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then CanClose:=True else CanClose:=False; end; Wie ist es möglich, dass bei einem Shutdown CanClose auf True gesetzt wird? Oder gibt es da noch bessere Möglichkeiten hinsichtlich des Beendens? |
Re: Trotz Bestätigung Programm mit Windows beenden
Warum benutzt du denn CanClose?
Wenn der Nutzer Ja klickt, soll sich das Programm doch direkt beenden. Schreib doch gleich ein Form.Close (oder so was). |
Re: Trotz Bestätigung Programm mit Windows beenden
wenn windows heruntergefahren wird gibt es die Nachricht wm_queryendsession. Einfach darauf reagieren und in einer variablen vermerken das heruntergefahren wird:
Delphi-Quellcode:
procedure THauptform.FormCloseQuery(Sender: TObject;
var CanClose: Boolean); begin if (fShutting_down or (MessageDlg('Wollen Sie VPlan Plus wirklich beenden?', mtConfirmation, [mbYes, mbNo], 0) = mrYes)) then CanClose:=True else CanClose:=False; end; |
Re: Trotz Bestätigung Programm mit Windows beenden
Behandele die Nachtricht
![]() @Svenkan: Weil das Ereifnis FormCloseQuery genau dafpür gedacht ist. Schreibst du das in OnClose, kannst du den Vorgang nicht mehr abbrechen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 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 by Thomas Breitkreuz