Comment forcer par programme la suppression de fichiers verrouillés par le système d'exploitation ou tout autre programme avec C/C++ ? La fonctionnalité devrait être similaire à celle du logiciel "Unlocker" à l'adresse suivante http://ccollomb.free.fr/unlocker .
Réponses
Trop de publicités?Si vous êtes sous Win32, la manière officielle de procéder est de marquer le fichier comme devant être supprimé au redémarrage et de demander à l'utilisateur de redémarrer. Pour marquer le fichier à supprimer au redémarrage, utilisez MoveFileEx avec l'indicateur MOVEFILE_DELAY_UNTIL_REBOOT (passez NULL comme destination).
Cela dépend vraiment du système de fichiers sous-jacent.
Par exemple, sous Linux, ext3 prend en charge les attributs de fichier qui ne font pas partie du paradigme standard unix read/write/execute/user/group/world.
Vous trouverez ici un bon résumé des attributs disponibles :
Cela m'a vraiment rendu fou la première fois que je l'ai rencontré, et même en tant que Root, et même après avoir redémarré à partir d'un CD enregistrable, je ne pouvais toujours pas supprimer un fichier de mon disque dur... BTW, les possibilités d'utilisation créative de ceci pour des blagues sont presque sans fin... :)