In der Projektdatei:
Delphi-Quellcode:
label
Ende;
begin
Application.CreateForm(TPassWort, Passwort); // Wenn PWD falsch, dann wird Application.Terminate aufgerufen
if Application.Terminated then
goto Ende; // wir sind fertig
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
...
Application.Run;
Ende:
end;
Jetzt kommt bestimmt ein grosser Aufschrei wegen Goto.
Aber das ist die beste Lösung!
Würde man schreiben:
Delphi-Quellcode:
begin
Application.CreateForm(TPassWort, Passwort);
if not Application.Terminated then
begin
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
...
Application.Run;
End;
end;
dann hat die
IDE Probleme die Projektdatei zu ändern weil wir die Projektdatei so geändert haben,
dass die
IDE nicht mehr weiss, wo sie die CreateForm Zeilen hintun soll.