J'utilise le RemplacerFichier Fonction Win32 dans le cadre d'une opération pour obtenir un comportement atomique.
Sur les trois codes d'erreur spéciaux pour cette fonction, j'ai pu en reproduire deux et les récupérer (rollback) : ERROR_UNABLE_TO_MOVE_REPLACEMENT et ERROR_UNABLE_TO_REMOVE_REPLACED.
Mes questions portent sur le troisième code d'erreur : ERROR_UNABLE_TO_MOVE_REPLACEMENT _2 .
- Quelqu'un a-t-il vu ce code d'erreur renvoyé ? Dans quelles conditions cela est-il possible ?
- Des idées sur la manière de reproduire cette erreur afin que je puisse tester le chemin d'accès dans mon code qui récupère l'erreur ?
- J'ai cru comprendre dans la documentation que pour récupérer (rollback) cette erreur, je devais renommer le fichier remplacé à son nom d'origine, parce que ReplaceFile l'aura laissé avec le nom du fichier de sauvegarde. Quelqu'un peut-il vérifier que c'est bien l'état dans lequel ReplaceFile laisse les fichiers ?
Quelques détails supplémentaires au cas où cela serait utile :
- ReplaceFile est appelé avec un nom de fichier de sauvegarde non NULL (en fait, ERROR_UNABLE_TO_MOVE_REPLACEMENT_2 ne peut pas se produire si un nom de sauvegarde NULL est donné).
- Je passe également l'option REPLACEFILE_WRITE_THROUGH.
- Les fichiers existent tous sur le même volume NTFS.