Addieren eines const char
-
Hallo,
hab gerade keine bessere Überschrift..
Ich schreibe grad ein kleines Programm, womit ich meine Container bei TrueCrypt schnell mounten/dismounten kann.
Habe das "RunAppplication" von dem Benutzer Sunday. Wenn ich die Container-Datei statisch reinschreibe (hinter dem /v, statt p) klappt alles wunderbar, doch ich möchte diesen Pfad gern veränderbar machen, das klappt nur nicht..TStringList *meinString = new TStringList(); meinString->LoadFromFile("dateipfad.txt"); // da steht dann zB. "D:\\meinContainer" (ohne Endung) drin const char *p = meinString->Strings[0].c_str(); RunApplication("C:\\Program Files (x86)\\TrueCrypt\\TrueCrypt.exe", "/q /l T /e /c n /m rm /v" + p);
Hier bekomme ich
[C++ Error] Unit1.cpp(44): E2085 Invalid pointer addition
Habe versucht statt p Char(p) zu schreiben. Dann meckert er nicht, aber dann macht der was Seltsames aus der Variable..
Wenn ich statt p direkt meinString->Strings[0] schreibe, krieg ich verständlicherweise
[C++ Error] Unit1.cpp(44): E2342 Type mismatch in parameter 'FileParam' (wanted 'const char *', got 'AnsiString')
Hat jemand einen Tipp wie ich das hinkrieg?
Grüße
-
Man kann C-Strings nicht mit + zusammenfügen. Schau mal in der Hilfe nach strcpy, oder besser noch strncpy.
Einfacher wäre es allerdings einen AnsiString mit dem kompletten Inhalt zu nehmen und daraus dann erst den C-String zu machen.Gruß KK