Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Application.Terminate geht nicht mehr ? (https://www.delphipraxis.net/178525-application-terminate-geht-nicht-mehr.html)

arnof 13. Jan 2014 09:10

Application.Terminate geht nicht mehr ?
 
Hi im Zuge auf meine Umstellung D5 auf XE2 ist mir aufgefallen, das Application.Terminate keine Funktion mehr hat!

Ich will die Application abschießen (Passwort falsch; keine Lizenz usw.)

himitsu 13. Jan 2014 09:14

AW: Application.Terminate geht nicht mehr ?
 
Ich bin mir sicher, daß es noch funktioniert.

Wie und wo nutzt du es denn?

(doch hoffentlich nicht erst im OnCreate der MainForm)

Der schöne Günther 13. Jan 2014 09:15

AW: Application.Terminate geht nicht mehr ?
 
Zitat:

Zitat von himitsu (Beitrag 1243372)
(doch hoffentlich nicht erst im OnCreate der MainForm)

Selbst da geht es bei mir :stupid:



VCL oder FMX?

arnof 13. Jan 2014 09:24

AW: Application.Terminate geht nicht mehr ?
 
VCL bei Programmstart d.h. entweder bei Create oder showForm

Ich rufe es auf und die Applikation läuft munter weiter (Passwort falsch, dann habe ich Adminrechte :oops:)

Union 13. Jan 2014 09:32

AW: Application.Terminate geht nicht mehr ?
 
Das ging ja noch nie so wirklich. Wenn Du sowas machst, solltest Du ein (Application.Terminated) Flag parallel dazu auswerten und noch ablaufenden "Restcode" bedingt ausführen.

Der schöne Günther 13. Jan 2014 09:35

AW: Application.Terminate geht nicht mehr ?
 
Delphi-Quellcode:
Application.Terminate()
tut doch im Endeffekt eh nichts anderes als nur eine
Delphi-Quellcode:
WM_QUIT
-Message zu senden, oder?

Wenn ich so etwas habe, dass ich mich nach dem Prüfen von irgendwas eventuell direkt wieder beenden möchte mache ich das generell noch vor
Delphi-Quellcode:
Application.Run()
. Ob das eine gute Idee ist weiß ich allerdings auch nicht.

Union 13. Jan 2014 09:38

AW: Application.Terminate geht nicht mehr ?
 
Bestimmt geht es um eine Benutzeranmeldung die ausgelöst durch ein OnAfterOpen einer Benutzertabelle während der Anzeige eines SplashScreens o.ä. erfolgen soll. Schägt die fehl, soll das Program beeendet werden.

arnof 13. Jan 2014 09:41

AW: Application.Terminate geht nicht mehr ?
 
Zitat:

Zitat von Union (Beitrag 1243380)
Bestimmt geht es um eine Benutzeranmeldung die ausgelöst durch ein OnAfterOpen einer Benutzertabelle während der Anzeige eines SplashScreens o.ä. erfolgen soll. Schägt die fehl, soll das Program beeendet werden.

So ist es, bevor die Hauptform benutzbar ist muss ich wissen, ob der User es auch darf und was er darf. Bisher ging das Ohne Probleme. Der Quellcode von Delphi her ist bei Application.terminate auch gleich. Anscheinend wird die Message WM_Quit ignoriert!

arnof 13. Jan 2014 09:46

AW: Application.Terminate geht nicht mehr ?
 
Wenn Die Anwendung läuft geht es, anscheinend verträgt er es nicht beim Create (dort kann/konnte man auch kein Close setzen). Ich werde es nun über einen Timer lösen, der eingreift!

Zacherl 13. Jan 2014 09:47

AW: Application.Terminate geht nicht mehr ?
 
Alternativ ein gutes altes ExitProcess(0) :P


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:59 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