Hab ein kleines Problem (system(""))



  • Es dreht sich um folgendes ^^.

    ich weiß, dass man in system ("x") für das x alle cmd befehle benutzen kann.
    Aber ich will 2 oder mehr tasks in ein system befehl reinschreiben, weiß aber nicht wie man das machen kann.

    Zweck: ich wollte zuerst mit dem befehl "cd" auf einen bestimmten ordner zugreifen und dann zb einene ordner erstellen oder eine datei ausführen.
    wenn ich aber zb
    system ("cd c:\\Programme");
    system ("dir");

    werden ja, da ich sozusagen ein neues cmd fenster aufrufe und das alte schließe, die dateien im ordner in dem sich die exe datei befindet angezeigt.

    hatte die idee
    system("x" , "y");
    aber da kommt dann immer ein fehler.

    Bitte helft mir.



  • Du solltest vielleicht eher über Batch-Dateien nachdenken, als über C++ :o



  • viande schrieb:

    Du solltest vielleicht eher über Batch-Dateien nachdenken, als über C++ :o

    Ja, das geht natürlich auch, aber mich interessiert wie es mit c++ funzt.



  • wenn du wissen willst, wie das mit c++ geht, dann benutz keine system()-aufrufe. sonst, wie schon gesagt wurde, batch.
    befehle hintereinander hängen kannste glaube ich mit &&, also z.B. "cd X:\pfad/sonstwo/hin && dir".
    aber dieses c++-programm ist wirlich zu 140207% überflüssig!

    mfg,
    julian



  • Du kannst ja mit deinem Programm eine Batch-Datei mit den nötigen Befehlen erstellen und die dann ausführen.



  • Ok danke nochmal.



  • da '\n' der Code der Entertaste ist und system ja den Parameter direkt an die CMD weitergibt, kannst du mehrere Befehle so ausführen:

    #include <cstdlib>
    
    // ...
    
    void ZeigeProgramme(void) {
        system("cd C:\\Programme\ndir");
    }
    

Anmelden zum Antworten