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 :

un fichier qui ne veux pas se supprimer car il est utilisé par un processus ?


Sujet :

Windows Forms

  1. #1
    Membre du Club Avatar de ferradji
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Points : 64
    Points
    64
    Par défaut un fichier qui ne veux pas se supprimer car il est utilisé par un processus ?
    Bonjour tout le monde

    Voila je crée un fichier dans un code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     .....
     StreamWriter fichier = null;
    fichier = File.CreateText(path);// path est le chemain passé en parametre et il est correct
    // Ensuite remplire le fichier avec fichier.Write
    ...
    Donc la première fois quand je compile mon application et je clique sur un bouton la première fois le fichier se crée et se remplit normalement.

    mais la deuxième fois quand j'essaye il me génère une exception après la débogage à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fichier = File.CreateText(path);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    The process cannot access the file 'C:\projet\......\bin\Debug\temp\fichier.crq' because it is being used by another process.
    Donc le fichier est utilisé par un autre processus et je ne peux pas le supprimer ou l'écraser

    Merci pour votre aide

  2. #2
    Rédacteur

    Avatar de Jérôme Lambert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2003
    Messages
    4 451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 451
    Points : 14 357
    Points
    14 357
    Par défaut
    Tu as pensé à libérer le fichier en faisaint :


  3. #3
    Membre du Club Avatar de ferradji
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    oui j'ai fermé le fichier et voici le code source
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    if (path != "")
                    {
                        StreamWriter fichier = null;
     
                        fichier = File.CreateText(path);
                        for (i = 0; i < nb_colone; i++)
                        {
                            fichier.Write(dg.Columns[i].HeaderText.ToString());
                            if (i != nb_colone - 1)
                                fichier.Write(";");
                            if (i == nb_colone - 1)
                                fichier.Write("\r\n");
                        }
     
                        for (i = 0; i < nb_ligne; i++)
                        {
                            for (j = 0; j < nb_colone; j++)
                            {
                                fichier.Write(dg[j, i].Value);
                                if (j != nb_colone - 1)
                                    fichier.Write(";");
                            }
                            fichier.Write("\r\n");
                        }
                        fichier.Close(); // je ferme bien le fichier apres avoir remplir le fichier 
                    }
    donc le fichier se crée la première fois quand je me connecte à mon application mais la deuxième fois il génère l'exception !

    mais si je me déconnecte de l'application et je me reconnecte encore je peux créer le fichier mais une seule fois comme avant !

  4. #4
    Membre du Club Avatar de ferradji
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    je pense que le problème se trouve dans le StreamReader qui ne se détruit pas !!! peut-etre c'est ça , mais la réponse à ce problème je ne sais pas !!

    en plus fichier.close s'exécute parce que sinon le fichier ne sera pas remplit , et moi la première fois il replit bien le fichier la preuve que close() s'exécute !!

  5. #5
    Rédacteur

    Avatar de Jérôme Lambert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2003
    Messages
    4 451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 451
    Points : 14 357
    Points
    14 357
    Par défaut
    Je vois pas trop ce qui cloche dans ton code...
    Essaye un Dispose en plus juste après le Close.

  6. #6
    Membre du Club Avatar de ferradji
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Points : 64
    Points
    64
    Par défaut
    j'ai essayé ça , CAD le dispose apres close mais pareil , la même exception qui se génère !! et le problème quand je prends cette partie de code toute seule avec un formulaire avec un bouton ça marche tres bien ! donc le fichier est utilisé par autre chause , et en plus c'est une application que je reprends , donc je ne sais pas qu'est-ce qui se passe ailleur , quel est ce processus qui ne veux pas dire son nom ? et qui utilise ce fichier !

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/09/2014, 09h51
  2. Réponses: 6
    Dernier message: 25/05/2012, 20h56
  3. Réponses: 2
    Dernier message: 22/05/2012, 10h43
  4. fichier qui ne se supprime pas car utilisé par un processus
    Par icicmoi dans le forum Windows Forms
    Réponses: 5
    Dernier message: 01/04/2008, 15h16
  5. un fichier qui ne veut pas être supprimé!!!!
    Par en_stage dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 22/10/2005, 01h08

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