Hallo
Ich möchte -bevor mein MFC-Dialog-Programm einen neuen Stand erzeugt- einen Datei-Copy des bisherigen auf .bak durchführen.
Der Befehl..
system("copy C:\\data\\questions.wwm C:\\data\\questions.wwm.bak");
..funktioniert tadellos.
Allerdings wird kurzzeitig ein DOS-Fenster geöffnet, was zu einem unschönen Bildschirmgeflacker führt.
Ich habe mich daher gefragt, ob man das nicht eleganter hinkriegen kann.
Der Returncode des copy ist mir dabei egal.
Habe nun intensiv das Forum durchforstet und bin auf ShellExecute gestoßen.
Die Zieldatei entsteht aber leider nicht! (auch nicht, wenn ich die bisherige Variante vorher entferne)
Aufrufversuche:
ShellExecute(0,"open","copy C:\\data\\questions.wwm C:\\data\\questions.wwm.bak","",0,SW_HIDE);
ShellExecute(0,"open","copy","C:\\data\\questions.wwm C:\\data\\questions.wwm.bak",0,SW_HIDE);
ShellExecute(0,"open","copy",_T("C:\\data\\questions.wwm C:\\data\\questions.wwm.bak"),0,SW_HIDE);
ShellExecute(0,"open","C:\\windows\\system32\\cmd.exe","copy C:\\data\\questions.wwm C:\\data\\questions.wwm.bak",0,SW_HIDE);
Was mache ich falsch oder geht das gar nicht mit ShellExecute?
Danke
Ich möchte -bevor mein MFC-Dialog-Programm einen neuen Stand erzeugt- einen Datei-Copy des bisherigen auf .bak durchführen.
Der Befehl..
system("copy C:\\data\\questions.wwm C:\\data\\questions.wwm.bak");
..funktioniert tadellos.
Allerdings wird kurzzeitig ein DOS-Fenster geöffnet, was zu einem unschönen Bildschirmgeflacker führt.

Ich habe mich daher gefragt, ob man das nicht eleganter hinkriegen kann.
Der Returncode des copy ist mir dabei egal.
Habe nun intensiv das Forum durchforstet und bin auf ShellExecute gestoßen.
Die Zieldatei entsteht aber leider nicht! (auch nicht, wenn ich die bisherige Variante vorher entferne)
Aufrufversuche:
ShellExecute(0,"open","copy C:\\data\\questions.wwm C:\\data\\questions.wwm.bak","",0,SW_HIDE);
ShellExecute(0,"open","copy","C:\\data\\questions.wwm C:\\data\\questions.wwm.bak",0,SW_HIDE);
ShellExecute(0,"open","copy",_T("C:\\data\\questions.wwm C:\\data\\questions.wwm.bak"),0,SW_HIDE);
ShellExecute(0,"open","C:\\windows\\system32\\cmd.exe","copy C:\\data\\questions.wwm C:\\data\\questions.wwm.bak",0,SW_HIDE);
Was mache ich falsch oder geht das gar nicht mit ShellExecute?
Danke