IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[C#] Suppresion de répertoire avec fichiers read-only


Sujet :

Windows Forms

  1. #1
    Membre du Club Avatar de aeled
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 84
    Points : 51
    Points
    51
    Par défaut [C#] Suppresion de répertoire avec fichiers read-only
    Bonjour,

    Dans un appli winform, j'ai une fonction de suppression qui tape dans des repertoires. Ca fonctionne, j'ai passé l'option recursif à true pour effacer le contenu des sous répertoire.
    Le problème que je rencontre, c'est si des fichiers présents dans le répertoire sont en lecture seule, l'appli renvoie une erreur et crash. Peut-on contourner le problème et supprimer quelque soit le cas ?

    David

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 324
    Points : 343
    Points
    343
    Par défaut
    Citation Envoyé par MSDN
    Exceptions
    -----------------------------------------------------------------------
    Type d'exception: IOException
    Un fichier avec le même nom et le même emplacement spécifié par path existe.
    - ou -
    Le répertoire spécifié par path est en lecture seule ou recursive est false et path n'est pas un répertoire vide.
    - ou -
    Le répertoire est le répertoire de travail actif de l'application.
    UnauthorizedAccessException
    L'appelant n'a pas l'autorisation requise.
    ArgumentException
    path est une chaîne de longueur nulle, ne contient que des espaces blancs ou contient un ou plusieurs caractères non valides comme défini par InvalidPathChars.
    ArgumentNullException
    path est référence Null (Nothing en Visual Basic).
    -----------------------------------------------------------------------
    Type d'exception: PathTooLongException
    Le chemin ou le nom de fichier spécifié ou les deux dépassent la longueur maximale définie par le système. Par exemple, sur les plates-formes Windows, les chemins et les noms de fichiers ne doivent pas dépasser, respectivement, 248 et 260 caractères.
    -----------------------------------------------------------------------
    Type d'exception: DirectoryNotFoundException
    Le chemin d'accès spécifié n'est pas valide (il se trouve, par exemple, sur un lecteur non mappé).
    -----------------------------------------------------------------------
    Pour un Fichier qui n'est pas accessible en ecriture une exception IOException est generée. Tu doit gérer chaque exception de manière a agir en consequence des problème rencontré.

  3. #3
    Membre du Club Avatar de aeled
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 84
    Points : 51
    Points
    51
    Par défaut
    J'en conclu qu'il n'y a pas moyen de forcer la suppression

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 324
    Points : 343
    Points
    343
    Par défaut
    Ben non y'a pas moyen de forcer vu que le but est que ce ne soit pas possible de le deleter donc la solution c'est de modifier l'attribut du fichier et de lui dire "Maintenant tu n'es plus read-only" et apres tu l'efface.
    ça sert à ça les exceptions ...

  5. #5
    Membre du Club Avatar de aeled
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 84
    Points : 51
    Points
    51
    Par défaut
    Oui dans le principe c'est logique...

    Bon bah va falloir que je me fasse une fonction récurssive, parce que pour chaque sous répertoire de sous répertoire il peut y'avoir des fichiers en lecture seule.
    Je reste étonné de devoir développer un truc pour ca. Ca m'aurait paru logique que le framework le propose

Discussions similaires

  1. Copier un répertoire avec fichiers
    Par Olivier Regnier dans le forum Linux
    Réponses: 5
    Dernier message: 29/03/2008, 12h13
  2. gérer l'acces à des fichiers : read only / write ..
    Par ryoussef19 dans le forum Visual C++
    Réponses: 21
    Dernier message: 09/08/2007, 15h39
  3. gérer l'acces à des fichiers : read only
    Par ryoussef19 dans le forum C#
    Réponses: 19
    Dernier message: 05/07/2007, 13h30
  4. Ouvrir un document Excel en READ ONLY (avec VBA)
    Par beegees dans le forum Access
    Réponses: 2
    Dernier message: 29/12/2004, 20h48
  5. Réponses: 2
    Dernier message: 13/12/2004, 23h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo