微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

FileSystemWatcher 不会为 %appdata%/Roaming 中的文件触发事件

如何解决FileSystemWatcher 不会为 %appdata%/Roaming 中的文件触发事件

大家好,

我正在使用 FileSystemWatcher 监视 %AppData%/Roaming 目录中的 log.txt 文件。 不幸的是,这不起作用。如果我在 %AppData% 之外更改 log.txt 的路径,则观察者可以正常工作。这可能是什么原因?

public class Logviewmodel : ObservableObject
{
    private string _fileName = "log.txt";
    private string _fullPath;
    private string _logFile;
    public string LogFile
    {
        get { return _logFile; }
        set { OnPropertyChanged(ref _logFile,value); }
    }
    public Logviewmodel()
    {
        _fullPath = FileHelper.GetFullPath(_fileName);
        var watcher = new FileSystemWatcher(AppDomain.CurrentDomain.BaseDirectory,_fullPath);
        watcher.Changed += new FileSystemEventHandler(OnChanged);
        watcher.EnableRaisingEvents = true;
        LogFile = File.ReadAllText(_fullPath);
    }
    private void OnChanged(object sender,FileSystemEventArgs e)
    {
        LogFile = File.ReadAllText(_fullPath);
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。