Dateien kopieren

anmae

Erfahrenes Mitglied
eine wahrscheinlich sehr simple Frage.

ich habe folgenden Code gefunden:
SHFILEOPSTRUCT DatOp;

Code:
  CString from = "C:\\Groupfile.ini";
  CString to = "C:\\TmpGroupfile.ini";
  DatOp.pTo = to;
  DatOp.pFrom = from;
  DatOp.fFlags = FOF_NOCONFIRMATION|FOF_FILESONLY ;
  DatOp.wFunc = FO_COPY;
  
  int Erfolgreich = !SHFileOperation(&DatOp);

aber es passiert nichts, erfolgreich=0
 
ups, hab grad gesehen - ne doppel 0 am ende.
aber wie mach ich das am dümmsten?

so:
DatOp.pTo = to +"\00";
DatOp.pFrom = from +"\00";

gehts nich
 
Moin
so wie es in den MSDN's steht muss da ne Doppel NULL :-) ans Ende.
mit "\00" schreibst du ein NULL und das char '0' hinein, Versuchs mal mit "\0\0".

Wobei ich mir nicht sicherbin, das CString das nicht sofort wieder in char (nur eine NULL am Ende) korrigiert. Falls dem so ist muss man nen Char-Array aufmachen und da kann man die letzte beiden Felder ja definitiv auf NULLsetzen...

Gruss Michael

P.S.: String müsste eine NULL selbst schreiben. evt reicht auch "\0". wenn es denn überhaupt so klappt
 
Zuletzt bearbeitet:
Zurück