J'ai une application où je suis à la recherche d'un fichier texte et si des modifications sont apportées au fichier, j'utilise le gestionnaire d'événement OnChanged
pour gérer l'événement. J'utilise le NotifyFilters.LastWriteTime
mais l'événement se déclenche deux fois. Voici le code.
public void Initialize()
{
FileSystemWatcher _fileWatcher = new FileSystemWatcher();
_fileWatcher.Path = "C:\\Folder";
_fileWatcher.NotifyFilter = NotifyFilters.LastWrite;
_fileWatcher.Filter = "Version.txt";
_fileWatcher.Changed += new FileSystemEventHandler(OnChanged);
_fileWatcher.EnableRaisingEvents = true;
}
private void OnChanged(object source, FileSystemEventArgs e)
{
.......
}
Dans mon cas, le OnChanged
est appelé deux fois, quand je change le fichier texte version.txt
et le sauvegarde.