Bonjour,
Dans un de mes programme, j'utilise unrardll pour extraire les fichiers rar. Or il s'avère que je me suis rendu compte que si dans une archive je dispose d'un fichier en lecture seule, lors de son extraction il restera en lecture seule. Le problème c'est que j'extrais ces fichiers dans un répertoire temporaire et que je souhaiterai les supprimer à la fin de l'exécution de mon application (ou à l'ouverture d'une nouvelle archive).
Pour la suppression des fichiers j'utilise boost::filesystem::remove(). Le problème c'est qu'il ne veut pas supprimer des fichiers en lecture seule (il me lance une exception...). Dans mes recherches j'ai trouvé un vieux thread de 2003 qui parlait de l'existence des fonctions :
Code :
- bool is_writeable( const path & );
- void set_writeable( const path &, bool value = true );
|
Mais elles ne semblent pas exister dans ma version actuelle de boost.
Je me demandais donc si vous aviez une idée de comment je pourrai régler mon problème. (sachant que je ne veux surtout pas faire d'appel au système pour faire un "rm -f " ou "del "... )
Merci