Datei mit MoveFile umbenennen - Windows directory ermitteln und einsetzen
-
Hallo,
hab folgendes problemchen
möchte ne datei im Verzeichnis C:/Windows umbenennen mit dem code:MoveFile("C:\\Windows\\datei1.txt", "C:\\Windows\\datei2.txt);nur möcht ich den C:\\Windows teil so abändern dass zunächst das Installationslaufwerk von Windows ermittelt wird
hab ich so versucht, will aber nicht ganz funzen:string text=getWindowsPath(); string datei1 = text.c_str() + "\\datei1.txt"; string datei2 = text.c_str() + "\\datei2.txt"; MoveFile(datei1.c_str, datei2.c_str);benutze dev c++ compiler und der sagt immer folgendes:
invalid operands of types `const char*' and `const char[12]' to binary `operator+'
ka was das heißen soll, hat anscheinend irgendwas mit den strings zu tun
falls wer ne idee hat was da falsch is bitte postenDanke, LG Flo

-
Versuch's mal mit:
string datei1 = text + "\\datei1.txt";Also ohne das ".c_str()". Der operator+() ist für std::string überladen, std::string::c_str() liefert aber einen const char *.
Stefan.
-
DStefan schrieb:
Versuch's mal mit:
string datei1 = text + "\\datei1.txt";Also ohne das ".c_str()". Der operator+() ist für std::string überladen, std::string::c_str() liefert aber einen const char *.
Stefan.
lol, stimmt
darauf hätt ich au kommen können
eine frage hätt ich dann noch
wenn ichs dann so compiliere:string text=getWindowsPath(); string datei1 = text + "\\datei1.txt"; string datei2 = text + "\\datei2.txt"; MoveFile(datei1, datei2);sagt devc++
cannot convert `std::string' to `const CHAR*' for argument `1' to `BOOL MoveFileA(const CHAR*, const CHAR*)'wie konvertiere ich das?
danke schonmal

-
Beim MoveFile Aufruf musst Du dann das c_str() wieder benutzen.
Simon
-
theta schrieb:
Beim MoveFile Aufruf musst Du dann das c_str() wieder benutzen.
Simonhabs auch mit c_str probiert aber die klammern vergessen

das wars, danke
-
Dieser Thread wurde von Moderator/in evilissimo aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
könntest auch einfach strcat benutzen
