|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Ingénieur développement logiciels Inscription : mars 2008 Messages : 175 ![]() |
Bonjour,
J'ai créé un service Windows contenant un FileSystemWatcher. Celui ci instancie la délégation OnCreated avec une classe qui contient un certain nombre de chose. Dans cette classe, on copie le fichier vers un autre fichier et on exploite le fichier copier (ça fait beaucoup de chose je ne vais pas rentrer dans le détail). A la fin de la méthode OnCreated, on supprime le fichier. Sur Erreur, je m'envois un mail avec le détail de l'erreur et le fichier est supprimé. S'il n'y a pas d'erreur, un document est imprimé et le fichier est supprimé également. Quand je lance le service et que je met un fichier dans le répertoire écouté par le FileSystemWatcher tout va bien et le document est imprimé et le fichier supprimé. Quand je met un deuxième fichier, une erreur se produit et dans mon mail le détail me dit que le Processus ne peut accéder au fichier "leFichierDonne" car il est utilisé par un autre processus. Dans la classe qui s'occupe du travail, je ne vais pas dire que je ne lis pas un fichier, mais ce n'est pas le même. La seule chose qu'on fait c'est une copie et une supression à la fin sur ce fichier. Avez vous une idée de ce qui pourrait bien se passer car là je suis dans la panade.... Un bout de code Code :
Petite précision, pour le tester, j'ai mis ma class FSWatcher dans un form et au load du form j'ai écrit l'instruction Et ben en interactif, je n'ai aucun problème. C'est juste en mode Service que le bug apparait. |
||
|
|
00
|
|
|
#2 | ||
|
Membre du Club
![]() Ingénieur développement logiciels Inscription : mars 2008 Messages : 175 ![]() |
J'ai trouvé une solution temporaire qui ne me convient pas du tout : si quelqu'un a mieux je suis preneur
Code :
Bien entendu dans la class Action, je ne gère pas la copie |
||
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Consultant informatique Inscription : février 2006 Messages : 731 ![]() |
Bonjour,
le problème ressemble beaucoup à un stream non fermé, mais le code que tu nous a fourni ne permet pas de confirmer mon intuition. Tu sais ce qu'il te reste à faire...
__________________
Un âne se croit savant parce qu'on le charge de livres (proverbe américain) N'oubliez pas de avant de ![]() Pas de question techniques par MP, c'est contre la philosophie du forum
|
|
|
00
|
|
|
#4 | ||
|
Membre du Club
![]() Ingénieur développement logiciels Inscription : mars 2008 Messages : 175 ![]() |
Tout à fait d'accord !!!
Ceci dit ce qui est surprenant c'est que l'erreur se trouve sur le fichier que j'ai appelé "fileInput" alors que le fichier qui est lu dans le programme est le fichier "fileSauvegarde" Je vais tout de même fournir le code de lecture pour bien montrer que ça ne vient pas de là Code :
|
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com