Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide Recherche
1840 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Erreur lors de l'ouverture d'un fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#] Erreur lors de l'ouverture d'un fichier

n°2033021
vonm
Posté le 29-10-2010 à 08:34:55  profilanswer
 

Bonjour,
 
J'ai un service windows qui a intervalles reguliers (20s) lit un fichier texte sur un serveur, le modifie et le re-ecrit a un autre emplacement.
Ce programme tourne sans probleme sauf qu'au bout d'un moment (plusieurs jours), j'ai une exception qui monte lors de l'acces en lecture au fichier source :
 
System.IO.IOException: Espace insuffisant pour traiter cette commande.
 
Bien evidemment j'ai de la place disque partout et pas franchement de probleme memoire.
Le probleme persiste meme si je redemarre le service et disparait si je redemarre la machine sur laquelle il tourne.
 
Avez-vous deja ete confronte a ce type de probleme ou savez vous exactement a quoi correspond cette exception ?
 
Merci d'avance
 
v.

mood
Publicité
Posté le 29-10-2010 à 08:34:55  profilanswer
 

n°2033031
olivthill
Posté le 29-10-2010 à 09:52:45  profilanswer
 

C'est forcément un problème de ressources mal libérées.
 
Il y a deux possibilités :
 
1. Mauvaise libération en interne par C#, mais ce serait étonnant car ce programme a été testé et est utilisé par beaucoup d'utilisateurs qui n'ont pas ce problème.
2. Mauvaise libération dans le programme. Mais sans voir le code, il est impossible d'en dire plus.
 
Bon courage !

n°2033060
vonm
Posté le 29-10-2010 à 11:46:44  profilanswer
 

Le code peut etre disponible, j'utilise une bilbiotheque open source qui traite mes fichiers texte (http://filehelpers.sourceforge.net/)
 
L'erreur remonte comme suit :
 
System.IO.IOException: Espace insuffisant pour traiter cette commande.
 
   à System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   à System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
   à System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   à System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize)
   à System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks)
   à FileHelpers.FileHelperEngine`1.ReadFile(String fileName, Int32 maxRecords)
   à FileHelpers.FileHelperEngine`1.ReadFile(String fileName)
 
Merci pour votre soutien !!!
 
v.


Message édité par vonm le 29-10-2010 à 11:47:03
n°2033184
Fred82
Posté le 29-10-2010 à 17:35:39  profilanswer
 

Il y a effectivement deux possibilités alors :
1) Bug mémoire sur la librairie FileHelper
2) Mauvaise libération mémoire sur ton propre programme.
 
Dans le premier cas, tu peux poster sur le forum de FileHelper qui est heureusement toujours actif aujourd'hui, malgré que cette librairie n'ait plus été mise à jour depuis 2007. De plus, cette librairie est open source, donc si tu as du temps devant toi, tu peux aussi débugger la librairie et la corriger.
 
Dans le second cas, à toi de voir sur ton propre programme. Gardes-tu trop de référence static ? Il y a des pièges à éviter quand on maintient un programme en live en permanence. Utilises-tu des Threads ? Gardes-tu la même instance de FileHelperEngine ? Cela vaudrait peut-être le coup de la réinstancier.
 
Dans les deux cas, regardes la taille du processus au démarrage, puis au moment où ça plante. Tu pourras être surpris !


---------------
Vos smileys favoris sur HFR : Script Greasemonkey / Topic HFR officiel

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Erreur lors de l'ouverture d'un fichier

 

Sujets relatifs
Fichier PAC et fonction myIpAddress[VBA] Problème lors de l'ouverture des fichiers
Compilation d'un fichier d'aide HTML (chm)[RESOLU]redirection php a partir d'un form le tout sur un seul fichier
langage C, message d'erreurTrouver quelle appli utilise une ressource / un fichier locké
Ouvrir fenêtre Glut depuis fenêtre C#Création et maintenance d'un fichier de configuration.
Plus de sujets relatifs à : [C#] Erreur lors de l'ouverture d'un fichier


Hit-Parade
Copyright © 1997-2012 Hardware.fr SARL / Groupe LDLC / LesNumeriques.com / Version anglaise du site: BeHardware