Отслеживание изменения файла - C#
Формулировка задачи:
Не могу разобраться, почему при отслеживании изменений в файле происходит двойной вызов.
Вот код логгера, который отслеживает изменение (стартую его в отдельном потоке):
То есть, если что-либо изменилось, то запускается дважды. Помогите разобраться
public class Logger
{
private FileSystemWatcher _watcher;
private bool _enabled = true;
public Logger()
{
_watcher = new FileSystemWatcher("C:\\Temp");
_watcher.Filter = "log.txt";
_watcher.Changed += Watcher_Changed;
}
public void Start()
{
_watcher.EnableRaisingEvents = true;
while (_enabled)
{
Thread.Sleep(1000);
}
}
public void Stop()
{
_watcher.EnableRaisingEvents = false;
_enabled = false;
}
private void Watcher_Changed(object sender, FileSystemEventArgs e)
{
RecordEntry();
}
private void RecordEntry()
{
Process proc = new Process();
proc.StartInfo.FileName = @"C:\Program Files\AIMP3\AIMP3.exe";
proc.StartInfo.Arguments = "/PLAY";
proc.Start();
}
}Решение задачи: «Отслеживание изменения файла»
textual
Листинг программы
public void Start()
{
_watcher.EnableRaisingEvents = true;
}