.exe mit parameter starten, probleme mit lpCmdLine[i] Ausgabe



  • moin,
    ich frage per lpCmdLine[1] .... lpCmdLine[n] mehrere Parameter ab, welche ich beim start der .exe übergebe.

    in meinem c++ programm will ich diese argumente jetzt verwenden.

    int WINAPI WinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR lpCmdLine,
                         int nCmdShow)
    {
    
    .
    .
    .
       std::fstream Datei("zvei.txt", std::ios::app);
        Datei << timeString;
        Datei << ":";
        Datei << lpCmdLine[1]
        Datei << ":";
        Datei << lpCmdLine[2];
        Datei << ":";
        Datei << lpCmdLine[3];
        Datei << "\n";
    
        return 0;
    }
    

    der aufruf der .exe geht über eine verknüpfung mit den parametern:

    test.exe param1 param2 param3
    

    er erstell die .txt und schreibt auch die parameter rein, jedoch vergisst er die :

    die ausgabe sieht also folgendermaßen aus:

    20090407101028:param1 param2 param3
    

    sollte aber so aussehen:

    20090407101028:param1:param2:param3
    

    weiss jemand, woran das liegt?
    Gruß



  • das ist nur ein string. musst du selber trennen. oder __argv benutzen



  • wie, das ist nur ein string?

    ipcmdline[i] gibt es also gar nicht? welches element ist denn der gesamte string?

    wie würde es mit __argv gehen?

    gruß



  • alles klar. habs verstanden...

    ipcmdline ist der gesamte string! dankeschön



  • hi,
    gibt es eine funktion, ähnlich dem substr() um die zeichenkette an einer bestimmten stelle in eine andere zu speichern?

    quasi substr() für char.. oder muss ich mir das selber bauen?

    gruß


Anmelden zum Antworten