gpt4 book ai didi

c# - FileSystemWatcher - 只读属性的更改事件

转载 作者:太空狗 更新时间:2023-10-30 01:01:09 26 4
gpt4 key购买 nike

当受监视目录中文件的 ReadOnly 属性更改时,FileSystemMonitor 似乎没有触发“已更改”事件(也没有其他事件)。

这是我的测试代码:

    using System;
using System.IO;

namespace FSM
{
class Program
{
static FileSystemWatcher FolderMonitor;


static void Main(string[] args)
{
FolderMonitor = new FileSystemWatcher("C:\\MyImages");
FolderMonitor.IncludeSubdirectories = false;
FolderMonitor.Changed += FolderMonitor_Changed; ;
FolderMonitor.EnableRaisingEvents = true;

Console.WriteLine("Hit any key to terminate .....");
Console.ReadKey(true);
}


private static void FolderMonitor_Changed(object sender, FileSystemEventArgs e)
{
Console.WriteLine("**** \"" + e.Name + "\" changed.");
}
}

使用该代码,我收到了很多“已更改”事件,例如如果修改时间戳已更改,但如果我正在更改任何标准属性(如 ReadOnly 或 Hidden)则不会。

我是不是遗漏了什么,或者我找到了一个“功能”?

最佳答案

您需要设置 NotifyFilter 属性,因为这决定了要监视的更改类型。参见 FileSystemWatcher.NotifyFilter Property

例如

FolderMonitor.NotifyFilter = NotifyFilters.Attributes;

关于c# - FileSystemWatcher - 只读属性的更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41281908/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com