![]() |
Problem mit BATCH-Dateien
Hallo,
ich verwende Batch-Dateien um mittels NET Dienste zu starten, stoppen usw. Der Output von NET soll dann in der Datei "output.txt" gespeichert werden, welcher dann von meinem eigentlichen Programm ausgelesen wird. Beispiel:
Code:
Problem:
@echo off
@ C:\Windows\System32\net.exe start WMPNetworkSvc > output.txt pause Dieses Verfahren funktioniert ganz gut - zumindest bis NET einen Fehler melden (weil bspw. der Dienst keine "Anhalten"-Funktion kennt usw.). In der DosBox steht dann ja "Fehler: blablabla", leider wird dieser Text nicht in die Datei "output.txt" hineingeschrieben: diese wird zwar erstellt, bleibt aber leer (0 Byte). :wall: 1.: Warum ist das so? Wieso funktioniert das Abfangen des Outputs nur, wenn *kein* Fehler auftritt? 2.: Wie kann ich auch den Fehler-Output auslesen bzw. in einer Textdatei speichern? |
Re: Problem mit BATCH-Dateien
Es gibt 2 Ausgabe-Streams in der Shell. Die Standard-Ausgabe(Nummer 1) und die Fehler-Ausgabe(Nummer 2). Letztere kannst du genauso in eine Datei schreiben wie Erstere. Guckst du:
Code:
@ C:\Windows\System32\net.exe start WMPNetworkSvc > output.txt 2>fehler.txt
|
Re: Problem mit BATCH-Dateien
Aaaaaah ... das mit den zwei Streams wusste ich nicht. Danke!!! :thumb:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz