net use mit system(); (Backslash macht probleme)



  • Hi,

    Ich habe folgendes vor:

    erg = "net use \\"+frmTimer->lbledtIP->Text+"\ipc$ "+
    frmTimer->lbledtPasswort->Text+" /user:"+
    frmTimer->lbledtRechnerName->Text+"\\"+
    frmTimer->lbledtBenutzer->Text;
    

    rauskommen soll das hier:
    net use \\<IP>\ipc$ <PW> /user:<RechnerName>\<user>

    Das brauch ich um einen Rechner über shutdown /s /m \\<IP> abzuschalten.

    Leider machen die ganzen \\ und / Probleme. So habe ich z.B. an der Stelle "\ipc$ " hinterher das Problem, dass der \ fehlt, oder wenn ich 2 mache, diese Plötzlich beim Debuggen beide angezeigt werden.

    Ich bin beim schreiben dieses Thread drauf gekommen, einfach mal den String ausgeben zu lassen. Versuche das und rätsel weiter, aber vielleicht hat ja von euch jemand eine Idee.

    Ich hoffe, die Objekte sind selbsterklärend.

    Danke.

    MfG Disi.



  • Okay, bin einen Schritt weiter.

    erg = "net use \\\\"+frmTimer->lbledtIP->Text+"\\ipc$ "+
    frmTimer->lbledtPasswort->Text+" /user:"+
    frmTimer->lbledtRechnerName->Text+"\\"+
    frmTimer->lbledtBenutzer->Text;
    

    Der String wird bei der Messagebox, die ich gewählt habe richtig angezeigt, allerdings erhalte ich keinen Eintrag, wenn ich net use in der cmd eingebe.

    Weiß jemand, ob man net use mit System(AnsiString.c_str()); nutzen kann? Oder warum es nicht funktioniert?

    MfG Disi



  • Grundsätzlich scheint die Frage hier falsch zu sein, und in das C++ Builder (VCL) Unterforum zu gehören. AnsiString, MessageBox & Co gehören jedenfalls nicht zu dem C++ Standard.



  • Oh, okay.

    Sry.


Anmelden zum Antworten