Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - [VisualCLX] Konsolen-Programme und Output
Burgpflanze - Do 05.09.02 12:58
Titel: Konsolen-Programme und Output
Hi,
ich habe folgendes Problem:
Mein Programm soll vorhandene Konsolen-Tools aufrufen. Allerdings muss ich den Output dieser Tools abfangen, da ich ihn in meinem Programm auswerten muss.
Wie geht das mit Kylix?
Gruss, Burgpflanze
Klabautermann - Do 05.09.02 13:56
Hallo,
ersteinmal gibt es den unterschied zwischzen Konsolen und X-Window anwendungen nicht in dem Maße wie unter Windows. Der Unterschied der Beiden Kylix-Anwendungstypen besteht tatsächlich nur in der Ausgabe der Daten.
Unter UNIXartigen Betriessystemen ist es üblich, das man die Ausgabe eine Programmes umleiten kann. Dies nennt sich Piping (gab es weniger mächtig auch unter DOS). Ich denke dieser Technick kannst du dich bedien.
Nehmen wir an du rufst ls auf. Dann kannst du die Ausgabe von ls so in eine Textdatei umleiten:
natürlich kannst du auch Parameter verwenden
Eine soche Datei könntest du dann Problemlos auswerten.
Du kannst die Programmausgabe auch an ein Programm übergeben:
ls -al | sort wenn du dir lieber ein übergabeprogramm schreiben willst.
Beide techniken lassen sich natürlich kombinieren:
Quelltext
1:
| ls -al | sort > test.txt |
Gruß
Kalabautermann
mth - Do 05.09.02 21:05
Titel: Re: Konsolen-Programme und Output
Burgpflanze hat folgendes geschrieben: |
Wie geht das mit Kylix?
|
Um die Ausführungen von Klabautermann in einen bequeme Funktion zu fassen: popen (& pclose). Zu finden in der Libc.
Beispielcode gibts z. B. hier:
http://community.borland.com/article/0,1410,27500,00.html
Die Manpage gibt dir auch sicher genügend weitere Informationen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 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!