AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Application.Terminate geht nicht mehr ?
Thema durchsuchen
Ansicht
Themen-Optionen

Application.Terminate geht nicht mehr ?

Ein Thema von arnof · begonnen am 13. Jan 2014 · letzter Beitrag vom 13. Jan 2014
Antwort Antwort
arnof

Registriert seit: 25. Apr 2013
1.261 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 12:05
Ich rufe es auf und die Applikation läuft munter weiter (Passwort falsch, dann habe ich Adminrechte )
Das heißt man muss nur das Beenden der Anwendung verhindern und schon hat man Adminrechte? Das hört sich eher nach einem Designproblem an.
Wieso wird die Anwendung denn überhaupt gestartet, sprich Fenster erstellt usw., wenn das Passwort falsch ist?

Viel sinnvoller wäre doch im Projektquelltext die Prüfungen zu machen, sei es dort direkt oder in einem Steuerungsobjekt. Dann brauchst du auch nichts explizit beenden, weil du einfach nur bei richtigem Passwort etwas machst. Und sonst bist du dann am end des Projekts und es ist automatisch beendet...
Bitte mal richtig lesen, da ist kein Designfehler! Wenn das Programm sich nicht beendet, obwohl es das sollte werden auch keine Einschränkungen mehr gezogen, da es eigentlich schon beendet sein sollte nach einem falschen Login!
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 12:12
jaenicke meint es bestimmt so:

Delphi-Quellcode:
program PLM2012;

{$R *.res}

begin
  Application.Initialize;
...
  If AllesOK then Application.Run;
end.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
arnof

Registriert seit: 25. Apr 2013
1.261 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 13:24
jaenicke meint es bestimmt so:

Delphi-Quellcode:
program PLM2012;

{$R *.res}

begin
  Application.Initialize;
...
  If AllesOK then Application.Run;
end.
Sie läuft doch schon sonst müsste nicht Terminiert werden!

Aber das Problem ist doch gelöst zu Designtipps werde ich Fragen stellen, wenn ich Tipps brauche
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#4

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 13:31
Aber das Problem ist doch gelöst zu Designtipps werde ich Fragen stellen, wenn ich Tipps brauche
Ich glaube zwar weiter nicht, dass das kein Designproblem ist, aber wenn du keine Tipps in die Richtung möchtest, kannst du natürlich gerne bei deinem Weg bleiben, dann werde ich mich bei Posts von dir in Zukunft mit Tipps in Richtung Design oder Architektur entsprechend zurückhalten. Kein Problem.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
arnof

Registriert seit: 25. Apr 2013
1.261 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 13:43
Aber das Problem ist doch gelöst zu Designtipps werde ich Fragen stellen, wenn ich Tipps brauche
Ich glaube zwar weiter nicht, dass das kein Designproblem ist, aber wenn du keine Tipps in die Richtung möchtest, kannst du natürlich gerne bei deinem Weg bleiben, dann werde ich mich bei Posts von dir in Zukunft mit Tipps in Richtung Design oder Architektur entsprechend zurückhalten. Kein Problem.
ja wir reden nicht von einem kleinen Projekt das man mal schnell Umdesignen könnte. Alles wieder zu testen würde sicher 1/2 Mann Jahr Zeit beanspruchen, das werde ich sicher nicht investieren nur wegen Application.Terminate! Mit dem Anmelden ist ja nur ein Beipiel wo es beim Betatesten aufgefallen ist (lustiger weise Tritt es nicht auf, wenn ich eine andere Art von Datenbankserver Connectet bin, warum ist eine Frage, die man sich stellen könnte, aber ich muss diese Woche Liefern!)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#6

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 14:53
Das ist ein anderer Punkt und das ist klar, das geht wohl jedem in der Praxis immer wieder so.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 13:35
Zitat von arnof:
Sie läuft doch schon sonst müsste nicht Terminiert werden!
Die Frage bleibt : WARUM läuft sie schon, wenn man das Login VOR dem Application.Run machen könnte.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#8

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 15:54
jaenicke meint es bestimmt so:

Delphi-Quellcode:
program PLM2012;

{$R *.res}

begin
  Application.Initialize;
...
  If AllesOK then Application.Run;
end.
Es gibt ja keine dummen Fragen, deswegen trau ich mich mal. Wenn die Anwendung noch nicht gestartet ist wie macht man dann das Login-Formular? Das ist doch schon Teil der Anwendung? Bezogen auf das Zitat, was mach AllesOK?
Ralph
  Mit Zitat antworten Zitat
pHL

Registriert seit: 27. Mai 2011
83 Beiträge
 
Delphi XE2 Professional
 
#9

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 16:17
jaenicke meint es bestimmt so:

Delphi-Quellcode:
program PLM2012;

{$R *.res}

begin
  Application.Initialize;
...
  If AllesOK then Application.Run;
end.
Es gibt ja keine dummen Fragen, deswegen trau ich mich mal. Wenn die Anwendung noch nicht gestartet ist wie macht man dann das Login-Formular? Das ist doch schon Teil der Anwendung? Bezogen auf das Zitat, was mach AllesOK?
Suche mal nach Splash-Screen - das hab ich auf die schnelle gefunden

http://www.swissdelphicenter.ch/de/showcode.php?id=420

MfG
pHL
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#10

AW: Application.Terminate geht nicht mehr ?

  Alt 13. Jan 2014, 16:19
Das sieht normalerweise so ca. aus:
Delphi-Quellcode:
program Foo;

uses
  Vcl.Forms,
  Vcl.Controls,
  ...;

{$R *.res}

var
  LoginForm: TfrmLogin;
  InitSuccess: Boolean;
  App: TApplication;
begin
  App := Application;
  App.Initialize;
  App.MainFormOnTaskbar := True;
  LoginForm := TfrmLogin.Create(nil);
  try
    InitSuccess := IsPositiveResult(LoginForm.ShowModal);
  finally
    LoginForm.Free;
  end;
  if InitSuccess then
  begin
    App.CreateForm(TfrmMain, frmMain);
    App.Run;
  end;
end.
Natürlich ist das so trivial zu knacken, sprich man müsste das Ergebnis in InitSuccess noch ein wenig verschleiern, mehrfach prüfen, usw., aber als Beispiel reicht das ja.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:48 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