![]() |
Konsole beenden
Blöde frage aber:
Wie beende ich ne Consolenanwendung vorzeitig? Application.Destory gibt nen error wieder das er irgendwas mit dem Spreicher nicht lesen kann. |
Re: Konsole beenden
So:
Delphi-Quellcode:
program Project2;
{$APPTYPE CONSOLE} uses SysUtils; begin { TODO -oUser -cConsole Main : Insert code here } Readln; exit; end. |
Re: Konsole beenden
Glaube mit halt;
|
Re: Konsole beenden
|
Re: Konsole beenden
Naja, aber was wenn er es nicht aus der Hauptprocedure machen will??
Delphi-Quellcode:
Oder aus nem anderen Thread aus? Da kann man dann doch nur das Halt verwenden oder aber TerminateProcess.
program Project1;
{$APPTYPE CONSOLE} uses SysUtils; procedure KA; begin exit; //halt; end; begin KA; Readln; end. |
Re: Konsole beenden
Ich weiss neeur thrad wäre besser aber nochmal hier ne kurze frage:
wie kann ich eine Zeile zurück springen. Also die letzte Zeile überschreiben? Writeln macht ne neue Zeile Write addiert Gibt es irgendwas was die Zeile neu schreibt? |
Re: Konsole beenden
Zitat:
|
Re: Konsole beenden
@Sleepymaster: Etwas mehr Phantasie bitte:
Delphi-Quellcode:
program Project2;
{$APPTYPE CONSOLE} uses SysUtils; procedure Foo; begin Readln; exit; end; begin { TODO -oUser -cConsole Main : Insert code here } Foo; exit; end. |
Re: Konsole beenden
Und was wenn in der Foo entschieden wird, ob das Programm beendet werden soll oder nicht???
Delphi-Quellcode:
Ja, man könnte dann bei Foo anstelle einer Procedure eine Funktion nutzen, die zurückliefert ob das Programmbeendet werden soll oder nicht, nur wenn man was anderes über die Funktion zurückgeben will, dann wird irgendwann der Aufwand zu groß!
program Project2;
{$APPTYPE CONSOLE} uses SysUtils; procedure Foo; var s: string; begin Readln(s); if s = 'STOP' then halt; end; begin Foo; Writeln('Laeuft noch'); Readln; end. |
Re: Konsole beenden
Hi SleepyMaster,
beendest du jedes Delphi-Programm auch mit Application.Terminate oder mit KillProcess? Wenn eine Funktion nötig ist, um dies abzufragen dann muss eben eine Funktion ran. Jeder der mal Turbo Pascal programmiert haben wird dies noch kennen. Ich sehe eigentlich nicht das Problem exit zu verwenden und das Programm sauber zu beenden als das Programm mit Halt zu beenden und sich sozusagen die Knarre an die Schläfe zu halten und abzudrücken. :roll: Greetz alcaeus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 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