FileSystemWatcher et suppression de dossier

Ziman Messages postés 245 Date d'inscription dimanche 27 avril 2003 Statut Membre Dernière intervention 26 septembre 2008 - 24 juil. 2008 à 21:01
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 27 juil. 2008 à 16:47
Bonjour,

je fais un petit programme de surveillance de fichier/dossier et j'ai un petit soucis. J'aimerai réagir à la suppression d'un fichier ou dossier dans un dossier. Je lie bien l'événement Deleted et ça réagit bien, mais j'aimerai savoir si l'élément supprimé est un fichier ou un dossier. Or, l'élément n'existant plus, je ne dispose que du path pour le faire. J'aurais bien regardé via l'extension mais certain fichiers peuvent ne pas avoir d'extension, du coup, je suis bloqué...

Quelqu'un a-t-il une idée de déterminer si l'élément est un dossier ou un fichier ? Ou encore mieux, comment réagir AVANT que le fichier/dossier ne soit supprimé...

Merci

Cours de programmation

1 réponse

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
27 juil. 2008 à 16:47
Salut, 

Utilises2 instances de FileSystemWatcher : une pour la surveillance des répertoires et l'autre pour la surveillance des fichiers.
Le filtrage du type se fait via la propriété NotifyFilter en spécifiant :
- FileName et pas DirectoryName + autres flags : uniquement les changements sur fichiers
- DirectoryName et pas FileName + autres flags : uniquement les changements sur répertoires

Par défaut les 2 sont spécifiés (avec d'autres flags) donc les notifications de changements sont mixtes.

Après si tu as besoin d'autres capacités tu peux regarder du côté de l'utilisation directe de ReadDirectoryChangesW (bien que je ne suis pas certains que tu aie plus de fonctionnalités, à vérifier) ou carrément des journaux NTFS mais là c'est autre chose.

/*
coq
MVP Visual C#
CoqBlog
*/
0
Rejoignez-nous