Ziman
Messages postés245Date d'inscriptiondimanche 27 avril 2003StatutMembreDernière intervention26 septembre 2008
-
24 juil. 2008 à 21:01
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDerniè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é...
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 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.