C:\... im Parameter erkennen.



  • Hallo.
    Ich öffne ein Programm mit zwei Parameter.

    Der zweite Parameter ist ein Pfad. Leider erkennt diesen Pfad nicht.
    Habs geprüft es liegt an den \ und viell. an den :

    Wie kann ich es machen, dass er ein Pfad (C:\ ...) als Parameter erkennt.

    Wisst ihr was ich meine`?



  • Zeig mal deien Code. Vermutlich hats was damit zu tun, dass in C++-Strings der backslash zum escapen benutzt wird.



  • FreakAzoids schrieb:

    Hallo.
    Ich öffne ein Programm mit zwei Parameter.

    Der zweite Parameter ist ein Pfad. Leider erkennt diesen Pfad nicht.
    Habs geprüft es liegt an den \ und viell. an den :

    Wie kann ich es machen, dass er ein Pfad (C:\ ...) als Parameter erkennt.

    Wisst ihr was ich meine`?

    Also ich benutze eine Funktion/Code wo ein Pfad als Parameter übergeben soll.

    Diese Parameter übergebe ich mit argv[2].
    D.h. ich starte die .exe mit Paramtern.

    sprich ich sage

    CString MeinPara =argv[2];

    und nutze hier meine Funktion

    xxxxxfunktion.....(......,MeinPara);

    Wenn ich nun als Parameter (also in argv[2]) ein Pfad schreibe /ordnerx/lala/testdatei.ini

    denn speichert er diesen pfad so nicht in argv[2].

    wenn ich es nun so mache geht es:

    CString Paravorzeichen =_T("/ordnerx/lala/");
    CString MeinPara=Paravorzeichen +argv[2];
    xxxxxfunktion.....(......,MeinPara);

    Aber dann ist es ja nicht mehr variabel weil ich dann ja auf "/ordnerx/lala/" angewiesen bin.
    Ich möchte den pfad selber eingeben können.

    Ich hoffe mein Problem ist nun verständlicher 😉 🙂



  • freakazoids schrieb:

    Ich hoffe mein Problem ist nun verständlicher 😉 🙂

    Kaum. Du hast uns immernoch nicht den tatsächlichen Code gezeigt, und wie du das Programm aufrufst. Lies dir bitte auch den Thread "Du brauchst Hilfe?" hier im Forum durch.



  • pumuckl schrieb:

    freakazoids schrieb:

    Ich hoffe mein Problem ist nun verständlicher 😉 🙂

    Kaum. Du hast uns immernoch nicht den tatsächlichen Code gezeigt, und wie du das Programm aufrufst. Lies dir bitte auch den Thread "Du brauchst Hilfe?" hier im Forum durch.

    der eigentliche code hat doch fast gar nix mit dem prob zu tun :-O?

    Geht ja nur darum, dass er meine Pfadparamtereingabe nicht erkennt



  • hast du denn mal debugged und dir angeguckt was als parameter übergeben wird?



  • wie wärs wenn du einfach zeigen würdest wozu du den pfadparameter brauchst und wie du ihn in deine funktion einbindest, musst dich nicht für schäbigen coden schämen 😉

    dann wird dir auch geholfen, sonst hat keiner eine vorstellung was du machen willst, bzw wo das problem liegt



  • freakazoids schrieb:

    der eigentliche code hat doch fast gar nix mit dem prob zu tun :-O?

    Geht ja nur darum, dass er meine Pfadparamtereingabe nicht erkennt

    Gut, wenn Du das so siehst: Ein per argv übergebener Pfad unter Windows lässt sich ganz normal verwenden. Du machst was falsch.

    Ich hoffe, das hilft Dir. 😮



  • freakazoids schrieb:

    der eigentliche code hat doch fast gar nix mit dem prob zu tun :-O?
    Geht ja nur darum, dass er meine Pfadparamtereingabe nicht erkennt

    "Er" ist in dem Fall dein Code. Und wenn er die Pfadparametereingabe nicht erkennt dann hat der Code doch was mit dem problem zu tun - er IST das Problem.
    Also wie schauts aus. Zeigst du uns die Codestelle wo du den Pfad verarbeitest?



  • Kommen in deinem Pfad Leerzeichen vor?

    Dann Programm so aufrufen:

    MyProg.exe "C:/Bla and Bla/Blub and Blub/Foo.ini"


Log in to reply