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#] Effacer un répertoire contenant des fichiers "readonly"


Sujet :

Windows Forms

  1. #1
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Points : 122
    Points
    122
    Par défaut [C#] Effacer un répertoire contenant des fichiers "readonly"
    Bonjour à tous

    Mon problème, c'est que je veux que mon programme C# efface un dossier contenant des sous-dossiers et fichiers protégés en écriture (readonly).
    J'ai essayé ceci et ça ne marche pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    string path = @"c:\test";
    DirectoryInfo dirToDelete = new DirectoryInfo(path);
    dirToDelete.Attributes = FileAttributes.Normal;
    dirToDelete.Delete(true);
    J'ai aussi essayé cela, et ça ne marche pas non plus (une exception plante sur "dir.Get()" disant "Non Trouvé") :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    string path = @"c:\test";
    string dirObject = String.Format("win32_Directory.Name='{0}'", path);
    using (ManagementObject dir = new ManagementObject(dirObject))
    {
      dir.Get();
      ManagementBaseObject outParams = dir.InvokeMethod("Delete", null, null);
     
      // ReturnValue should be 0, else failure
      if (Convert.ToInt32(outParams.Properties["ReturnValue"].Value) != 0)
      {
        // Failure....
      }
    }
    Je désespère. Faut-il que je parcours à la main tous les fichiers de tous les sous-dossiers pour les mettre en "NON readonly" ?
    Merci beaucoup d'avance

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par Rodie
    Faut-il que je parcours à la main tous les fichiers de tous les sous-dossiers pour les mettre en "NON readonly" ?
    C'est ce que j'allais te conseiller, car je ne sais pas si le fait de mettre le ReadOnly à false sur le répertoire se répercute sur les fichiers

  3. #3
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 171
    Points : 122
    Points
    122
    Par défaut
    Bin en fait, dans Windows, quand tu mets un répertoire "readonly" ou que tu enlèves sa propriété "readonly", une popup apparaît et te demande :
    "Appliquer ces modifications à ce dossier et à tous les sous-dossiers et fichiers".
    Si tu coches cela, bin ça répercute partout
    Et c'est ça que je voulais refaire dans le code

    Si personne ne sait, je ferais une boucle récursive pour virer le "readonly" de tous les sous-dossiers.

    Merci bien à toi.

Discussions similaires

  1. Suppression d'un répertoire contenant des fichiers
    Par gotcha5832 dans le forum Langage
    Réponses: 1
    Dernier message: 20/10/2009, 11h58
  2. Déployer des répertoires contenant des xml
    Par elitost dans le forum JWS
    Réponses: 3
    Dernier message: 17/10/2006, 08h22
  3. nom de répertoire contenant des accents
    Par isa38 dans le forum Windows
    Réponses: 6
    Dernier message: 21/07/2005, 10h27

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