Standardausgabe funktioniert nicht



  • Hallo,

    ich rufe mit meinem Programm ein Kommandozeilentool auf das sein Ergebnis auf die Standardausgabe schreibt.
    Diese Standardausgabe soll in eine Datei umgeleitet werden.
    Von der Kommandozeile funktioniert das wunderbar.
    Sobald ich das aber aus der Software aufrufe wird die Datei nicht erstellt.
    Habe bisher Shellexecute und CreateProcess getestet.
    zB:
    ShellExecute(NULL, "open", "prog.exe", "-s -t >data.txt", NULL, SW_HIDE);
    data.txt wird in diesem Fall nicht erstellt. Wenn ich das von der Kommandozeile aufrufe funktioniert es.

    😕



  • Die "Umleitung (>)" macht der Command-Processor (cmd.exe).
    Also musst Du den starten und nicht Dein Programm!
    Oder Du machst die Umleitung selber (CreateProcess).

    "cmd.exe prog.exe -s -t >data.txt"
    

Anmelden zum Antworten