Ausgabeumleitung im Programm

Wenn man in einem DOS-Fenster die Ausgabe eines Befehls in eine Datei umleiten will, geht das recht einfach mit dem ‘>’- Zeichen, zum Beispiel:

vorlesen Druckansicht
Lesezeit: 1 Min.

Wenn man in einem DOS-Fenster die Ausgabe eines Befehls in eine Datei umleiten will, geht das recht einfach mit dem ‘>’- Zeichen, zum Beispiel:

Wenn man dies jedoch aus einem Programm heraus versucht, etwa mit dem Shell-Befehl von Visual Basic, wird das Aufreihen mehrerer DOS-Befehle nicht erkannt, und man erhält die Meldung ‘FC: Too many filenames’. Können Sie mir eine Möglichkeit nennen, die Ausgabeumleitung zu realisieren?[/frage]

[pre]fc text1.txt text2.txt > diff.txt[/pre]

Für das Herausfiltern dieser so genannten Redirections aus der Kommandozeile ist die eigentliche Shell zuständig, die bei Ihrem Aufruf gar nicht mehr zum Zuge kommt. Sie müssen daher eine neue Instanz von command.com starten. Der korrekte Aufruf sieht dann etwa so aus:

Shell("c:\windows\command.com /c fc.exe " _ 
& "text1.txt text2.txt > diff.txt")

(hos) (hos)