Entwickler-Ecke
Sonstiges (Delphi) - Delphi Konsolenprogramm?
Niko S. - Mo 13.07.09 21:58
Titel: Delphi Konsolenprogramm?
Ich haette da mal ne Frage wie ich das realisiere, dass ich ein Konsolenprogramm habe?
Ich finde irgendwie keine Beispiel und ich wollte halt konkret nen IRCBot erstellen, weiß
aber nicht wie ich das mit der Konsole da hinbekomme..
Hat vielleicht jemand nen Beispiel oder so?
Also nur von nem Konsolenapp, was ich da beachten muss etc?
FinnO - Mo 13.07.09 22:08
Datei->neu->weitere->konsolenanwendung
Niko S. - Mo 13.07.09 22:11
Und wie vermeide ich, dass das Programm immer aus geht?
FinnO - Mo 13.07.09 22:13
Keine Ahnung ;)
[ironie]
Delphi-Quelltext
1: 2: 3: 4:
| while true do asm nop end; |
[/ironie]
BenBE - Di 14.07.09 08:22
FinnO hat folgendes geschrieben : |
[ironie]
Delphi-Quelltext 1: 2: 3: 4:
| while true do asm nop end; |
[/ironie] |
FinnO: Effizienz ist alles:
while true do;
Niko S.: In dem Du solange was tust, bis dein Programm beendet werden soll.
Niko S. - Di 14.07.09 11:32
Eben das war ja meine Frage.
Ich hab das jetzt so gelöst dass ich ein Bool wert habe und der solang die
Schleife aufrecht erhält bis ich "q" eingebe für quit..
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| while not PrgQuit do begin ReadLn(aCmd); if (aCmd = 'q') then prgQuit := True; end; |
Klappt soweit ganz gut ^^
Delete - Di 14.07.09 14:09
Was verstehst du unter "ausgehen"? Wenn du damit meinst, dass sich das Konsolenfenster einfach schließt, wenn du es aus der ID startest und du so die Ausgabe nicht sehen kannst, dann schreib als letzte Zeile ein Readln. Dann schließt sich die Konsole erst nach der Eingabe von Return. Oder mach neues Konsolenfenster auf über Start->Ausführen "cmd" und ruf die Anwendung über die Konsole auf.
Niko S. - Di 14.07.09 18:25
Es geht ja darum dass es ein IRC-BOT in einer Konsole sein soll ^^
Und son Irc-Bot muss halt "aktiv" sein..
Naja und so funktioniert es ja, dass er immer wieder nach nem input fragt, bevor er closed.
FinnO - Di 14.07.09 18:36
dann sollte trotzdem ein ReadLn reichen.
Niko S. - Di 14.07.09 19:02
Hab ich doch?
Nur damit ich halt mehrere Befehle eintippen kann, in einer Schleife, oder ist daran was falsch?
FinnO - Di 14.07.09 19:59
jap, frei nach dem Motto:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| program Project2;
{$APPTYPE CONSOLE}
uses SysUtils;
var Befehl : String;
begin
while not (Uppercase(Befehl)='EXIT') do begin WriteLn('Hallo, geben Sie "exit" ein, um das Programm zu beenden (nicht case-sensitiv).'); ReadLn(Befehl); end;
end. |
Niko S. - Di 14.07.09 20:07
Und was ist jetzt daran falsch?
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| while not PrgQuit do begin ReadLn(aCmd); if (aCmd = 'q') then prgQuit := True; end; |
Da kommen natürlich noch mehrere Befehle hinzu nicht nur der zum Beenden.
Aber das ist doch im Grunde das Selbe oder nicht?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!