![]() |
Delphi-Version: 2010
Programmabbruch über Windows-Fenster 'x' verhindern
Möchte gerne verhindern, dass das Anwendungsprogramm über Klick auf 'x' im Windows-Fenster beendet werden kann oder zumindest eine Warnung ausgeben, falls das versucht wird !
Kann mir da jemand helfen ? Gerkey |
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Schau dir mal die Events
Delphi-Quellcode:
und
OnClose
Delphi-Quellcode:
deines Formulars an.
OnCloseQuery
|
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Du kannst auch die BorderIcons im Objektinspektor ausstellen.
Allerdings funktioniert Alt-F4 trotzdem noch. Hängt also ein bisschen davon ab, was du erreichen willst. |
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Zitat:
Wenn du dein Programm aber selbständig mit Close; schließen möchtest, wird das ebenfalls nicht mehr funktionieren. Mit einer Zeile Code ist es also nicht getan. |
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Da gab es mal was "Shell-Ersatz". Im Zusammenhang mit dem BKA-Trojaner.
Ich finde das nur gerade nicht. Wenn ich mich richtig erinnere kann man eine Shell sooft beenden wie man will, sie wird automatisch neu gestartet. Bin mir allerdings überhaupt nicht sicher. Gruß K-H |
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Danke für den Tip mit OnCloseQuery. Das hat mit ein paar zusätzlichen Statements gut geklappt !
gerkey |
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Zitat:
![]() gruss |
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Zitat:
|
AW: Programmabbruch über Windows-Fenster 'x' verhindern
Man kann auch das ganze Geklicke "da oben" abfangen, wenn man will...
Delphi-Quellcode:
...
protected procedure WMNCLBUTTONDOWN(var msg: TMessage); message WM_NCLBUTTONDOWN; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.WMNCLBUTTONDOWN(var msg: TMessage); begin if cbCLOSE.Checked then inherited; // NO CLOSE if deactivated / unchecked // cbCLOSE kann man durch eine PW-Abfrage ersetzen, ALT-F4 muss geblockt werden if msg.wParam = HTCAPTION then begin Caption:= 'HTCAPTION'; Exit;// end; if msg.wParam = HTSYSMENU then begin Caption:= 'HTSYSMENU'; Exit;// end; if msg.wParam = HTCLIENT then begin Caption:= 'HTCLIENT'; Exit;// end; if msg.wParam = HTCLOSE then begin Caption:= 'HTCLOSE'; Exit;// end; if msg.wParam = HTMAXBUTTON then begin Caption:= 'HTMAXBUTTON'; Exit;// end; if msg.wParam = HTMINBUTTON then begin Caption:= 'HTMINBUTTON'; Exit;// end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:35 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