Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Stdin Stdout unter Windows??? (https://www.delphipraxis.net/147810-stdin-stdout-unter-windows.html)

viakt133 16. Feb 2010 23:37


Stdin Stdout unter Windows???
 
Hallo,

Bin völlig neu hier. Fange auch erst an mit Windows Programmierung. Deshalb die Frage, gibt es unter Windows noch die Standardeingabe, was früher die Konsole war und eine Standardausgabe?

Wenn ja, wie werden die angesprochen?

Meine Vater hat früher mit Turbo Pascal programmiert. Das gab es mal Input und Output. Wie ist das heute?

Wo gibt es dazu Infos?

Namenloser 16. Feb 2010 23:46

Re: Stdin Stdout unter Windows???
 
Hallo viakt133,

Willkommen in der DP :dp:

Klar gibt es die Standardeingabe und -ausgabe noch. Allerdings logischerweise nur bei Konsolenanwedungen. Um eine Konsolenanwendung zu schreiben, kannst du entweder im Menu Datei->Neu den entsprechenden Menüpunkt wählen, oder du fügst in der Projektdatei (.dpr) {$APPTYPE Console} ein.

Zugreifen kannst du auf die Standardein/-ausgabe mit den Pascal-Dateifunktionen write (bzw. writeln) und read (bzw readln), indem du einfach den File-Parameter weglässt.

rollstuhlfahrer 16. Feb 2010 23:52

Re: Stdin Stdout unter Windows???
 
Übrigens gibt es sie Standardeingabe auch bei Formularanwendungen. Diese kann wie gewöhnliche Dateien mit Pascal-Routinen gelsen werden (Delphi-Referenz durchsuchenEOF(), Delphi-Referenz durchsuchenReadLn()). Um die Standardausgabe bei Formularanwendungen zu bekommen, muss in der Projekt-Datei ein "{$APPTYPE CONSOLE}" stehen, oder durch AssignConsole (o.ä.) muss eine Konsole geholt werden.

Bernhard

viakt133 17. Feb 2010 06:21

Re: Stdin Stdout unter Windows???
 
Hallo,

und Danke für Eure Antworten. Da gehen also die Prozedure Read,Readln,Write,Writeln davon aus, das sie bei weggelassenem Dateiparameter automatisch in die Console schreiben?

Also entweder {$Apptype Console} im Hauptprogramm oder AssignConsole() im Programm.
Da wird wohl die Version mit {$Apptype console}erst mal einfacher sein.

Aber AssignConsole()? Wie sähe die Kommunikation damit aus? Könnte ich damit meiner Console einen eigenen Namen geben oder wird diese Prozedur ohne Parameter augerufen.

sirius 17. Feb 2010 06:39

Re: Stdin Stdout unter Windows???
 
Ich glaub es wurde AllocConsole anstatt AssignConsole gemeint. Aber der Befehl erwartet keine Parameter.

Aber schau mal hier, was es so für Funktionen zur Console gibt:
http://msdn.microsoft.com/en-us/library/ms682073(VS.85).aspx
Da heisst auch einer "SetConsoleTitle". Was das wohl bedeutet ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz