Programm beenden
-
Hallo,
ich teste beim Starten meines Programmes einen Registry-Eintrag (über FormCreate). Wenn der Eintrag nicht vorhanden ist, zeige ich eine MessageBox an und schließe das Programm. Geht aber leider nicht, das Programm öffnet sich trotzdem.
Wie kann ich das machen ?
Vielen Dank für Hilfe !
-
zeig doch mal ein wenig Code, wir wissen ja garnicht was Du da machst.
-
Klar, gerne:
if (sSerial != "123") { Application->MessageBox("Nicht registriert !", "Fehler", MB_OK); frmMain->Close(); return; }
-
Sollte eigentlich so gehen. Nimm mal Application->Terminate()
-
Das gehört eigentlich nicht nach FormCreate (also in die Fensterlogik), sondern in die WinMain-Funktion. In FormCreate ist Close() zudem, wie du ja feststellen konntest, wirkungslos.
-
Ok, ich hab im Forum mal gesucht, aber noch nix zum Umsetzen gefunden. Aber danke, jetzt weiß ich wenigstens wonach ich suchen muss.
-
Also ich benutze immer folgende Variante, wenn ich aus dem Konstruktor (oder FormCreate) die Anwendung beenden möchte:
if(...) { WindowState = wsMinimized; Application->Terminate(); }Dies verhindert, daß das Hauptfenster noch mal kurz aufblinkt, bevor es sich dann beendet.