Ich möchte Dos-Befehle ausführen und wenn vorhanden den
Rückgabewert auslesen.
Es gibt den sogenannten Error code, den du Problemlos in Batchdateien abfragen kannst. Damit weisst du, ob der jeweilige Befehl korrekt ausgeführt wurde (error code = 0), bei Fehlern gibt es je nach Fehler verschiedene Nummern
Ein Beispiel aus der (alten) DOS Hilfe:
_xcopy %1 %2 /s /e
if errorlevel 4 goto wenig_speicher
if errorlevel 2 goto abbrechen
if errorlevel 0 goto beenden
wenig_speicher
echo Zu wenig Arbeitsspeicher, um die Dateien zu kopieren,
echo unzulässige Laufwerkangabe oder unzulässige
echo Syntax in der Befehlszeile.
goto beenden
abbrechen
echo Sie haben STRG+C gedrückt, um den Kopiervorgang abzubrechen.
beenden_
also wenn ich im einfachsten Fall dir ausführe soll ich als
Rückgabe eine Liste der Dateien kriegen. Geht das?
Du kannst die Bildschirmausgabe von dir in eine Datei umleiten. Weiss jedoch nicht genau, wie du dies dann weiterverwenden willst!
dir c:*.* /s >>f:\dir.txt
Mit diesem Beispiel siehst du jedoch nichts mehr auf dem Bildschirm. Es wird alles in die Datei „dir.txt“ geschrieben.
Falls du einen DOS Befehl bsp. aus einem Turbe_Pascal Programm aufrufst, kannst du auch den Bildschirmspeicher auslegen und so die Rückgabe gewinnen. Jedoch nur das, was nach dem Ausführen auf dem Schirm steht, nicht also die komplette Liste. Ein Beispiel dazu könnte ich irgendwo ausgraben (such such…)
Ich hoffe, das hat geholfen.
Gruss Armin