Salut à tous.
J'ai un CopyFile qui plante de temps en temps, de manière alléatoire, mais toujours quand il s'agit d'écraser le fichier.
Par contre SHFileOperation() fonctionne tout le temps, même quand CopyFile n'écrase pas le fichier.
Cela veut-il dire que CopyFile est obsolète et qu'il vaut mieux ne plus l'utiliser ?
Le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 //première méthode if(CopyFile(L"ressources\\cap.exe",sPathAppData.c_str(),FALSE)){ if(TEST){wcout<<"copy1Cap: true"<<endl;} }else{ if(TEST){wcout<<"copy1Cap: false"<<endl;} } //deuxième méthode SHFILEOPSTRUCT shfosPac; //pour ne pas afficher de boîtes de dialogue shfosPac.wFunc=FO_COPY; //Le fichier à copier shfosPac.pFrom=L"ressources\\cap.exe\0\0"; //la destination shfosPac.pTo=sPathAppData.c_str(); shfosPac.fFlags=FOF_SILENT | FOF_NOCONFIRMATION; //copie des fichiers dans le répertoire if(SHFileOperation(&shfosPac)){ // SHFileOperation renvoie 0 en cas de succès!!!! if(TEST){wcout<<"copy2Cap: false"<<endl;} }else{ if(TEST){cout<<"copy2Cap: true"<<endl;} }
Merci à tous.
Alain
Partager