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

 .NET Discussion :

Etrange erreur en copiant un fichier.


Sujet :

.NET

  1. #1
    Nouveau membre du Club
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 37
    Points
    37
    Par défaut Etrange erreur en copiant un fichier.
    Bonjour tout le monde,

    J'essaye dans du code vb.net de copier un fichier en utilisant la méthode CopyTo d'un objet FileInfo (System.IO) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
                'SOURCEFILE
                m_DirSource = New DirectoryInfo(AppSettings("SourcePath"))
                m_FiSource = New FileInfo(m_DirSource.FullName + AppSettings("SourceFile"))
     
                'TEMPFILE
                m_DirTemp = New DirectoryInfo(AppSettings("SavePath"))
                m_FiTemp = New FileInfo(m_DirSource.FullName + AppSettings("SourceFile"))
     
                m_FiSource.CopyTo(m_FiTemp.FullName, True)
    J'ai alors l'erreur :
    System.IO.IOException
    "Le processus ne peut pas accéder au fichier 'X:\GECOM\BLI.TXT', car il est en cours d'utilisation par un autre processus."
    Soit. Je ferme toutes mes applis, même problème, je reboot, même problème.

    Après un n-ième essai je place un point d'arrêt sur le CopyTo et je définit l'instruction suivante :
    Et là le delete marche, mais toujours impossible de copier le fichier.
    Quelqu'un aurait une idée, parce que plus ça va, moins ça va...

  2. #2
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Est-ce que ça fonctionne avec File.Copy ?
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  3. #3
    Nouveau membre du Club
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 37
    Points
    37
    Par défaut
    Non je viens de tester et même erreur.

    J'y ai réfléchit cette nuit (oui j'en fait des cauchemars) et je vois vraiment pas pourquoi je peux supprimer mais pas copier (encore je tenterais de le déplacer).

    [EDIT]
    Après divers test (depuis une autre machine, en mode release, etc), il semblerait que ça soit un problème réseau (le fichier source pointe sur un lecteur réseau).
    En plaçant la copie dans un thread plus de problème.
    Je laisse le code si ça peut aider quelqu'un, on sait jamais.
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    Imports System.Threading
    Imports System.IO
     
    Module ModMain
    	Private m_DirSource As DirectoryInfo
    	Private m_FiSource As FileInfo
     
    	Private m_DirTemp As DirectoryInfo
    	Private m_FiTemp As FileInfo	
     
    	Private m_thread As New Thread(AddressOf TestCopy)
     
    	Sub Main()
    		Dim btest As Boolean = True
     
    		'SOURCEFILE
    		m_DirSource = New DirectoryInfo(AppSettings("SourcePath"))
    		m_FiSource = New FileInfo(m_DirSource.FullName + AppSettings("SourceFile"))
     
    		'TEMPFILE
    		m_DirTemp = New DirectoryInfo(AppSettings("SavePath"))
    		m_FiTemp = New FileInfo(m_DirSource.FullName + AppSettings("SourceFile"))
     
     
    		m_thread.Start()
     
    		While btest
    			If m_thread.ThreadState = ThreadState.Stopped Then
    				btest = False
    			End If
    		End While
    	End Sub
     
    	Private Sub TestCopy()
    		m_FiSource.CopyTo(m_FiTemp.FullName, True)
    	End Sub
    End Module

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [TClientDataSet] Erreur de chargement du fichier MIDAS.DLL
    Par Manopower dans le forum Bases de données
    Réponses: 10
    Dernier message: 31/08/2016, 14h08
  2. [VB6] erreur 67 : Trop de fichiers
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 11/03/2006, 20h36
  3. Réponses: 2
    Dernier message: 09/01/2006, 09h04
  4. message d'erreurs sur copie de fichier
    Par screeminelle dans le forum C++
    Réponses: 9
    Dernier message: 01/11/2005, 14h21
  5. FOXPRO 2.6 : erreur créations du /des fichiers CAB
    Par breihtiti dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 16/11/2002, 11h28

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