Bonjour,
Petit soucis...
Le but de l'appli est d'envoyer une alerte à d'autre poste de l'arrivé d'un fichier (pdf) dans une répertoire sur le partage. Jusque l'a tout fonctionne, hors j'aimerai mettre une sécurité qui vérifie si l'ouverture du fichier a été faite par l'un des utilisateur, si ce n'est pas le cas celui-ci s'imprime.
C'est donc pour vérifier si le fichier est ouvert que je bloque, car cette vérification ne doit pas empêcher l'ouverture du fichier par un autre user (pour ce cas c'est réglé grâce au paramètre FileShare), mais maintenant il me dit qu'il est ouvert alors que celui-ci ne l'est pas
Merci
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 private void waitPrint() { bool open = false; for (int i=0; i <= 200; i++) { Thread.Sleep(1000); open = TryOpen(fullPath); if (open == true) { this.Invoke(new nomfichier(nomfichierText), 3, " Ouvert..."); break; } else this.Invoke(new nomfichier(nomfichierText), 3, " Fermé..."); } if (open == false) Print(fullPath); } private bool TryOpen(string filePath) { FileStream fs; try { fs = File.Open(filePath, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); fs.Close(); return true; } catch { fs = null; fs.Close(); return false; } }![]()
Partager