问题标签 [filesystemwatcher]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
623 浏览

c# - 多个 FileSystemWatchers 来监视本地系统上的文件?

我们正在为我们的内部会计软件包系统编写一个文本编辑器之类的工具,它具有可以通过我们自己的 Xml 语言规范完成的操作。这些宏命令是在 Xml 文件中指定的,我们需要能够监控打开的文件是否在外部修改了 bean。

唯一的问题是任何时候可能有 20-30 个不同路径的文件打开。在这种情况下使用多个 FileSystemWatchers 会更好吗?或者监视根驱动器并捕获与编辑器中打开的文件匹配的特定事件会更好(尽管可能会引发很多事件)。

有些是本地驱动器(C、D、E),有些是它们的网络驱动器(U、X、G、H)。文件也很厚实,大约 300-400Kb。

0 投票
1 回答
481 浏览

.net - FileSystemWatcher 保持父目录

我正在使用FileSystemWatcher监视文件夹,它似乎阻止了文件夹的父级被删除,但并没有阻止文件夹本身被删除。

例如,我有文件结构:

FileSystemWatcher定位FolderToWatch。在我的程序运行时,如果我转到 Windows 资源管理器并尝试删除Root,我会收到错误消息“无法删除 Root:访问被拒绝”。

但是,如果我FolderToWatch先删除,我可以Root毫无意外地删除。

如果你想玩它,这里有一些代码:

为什么会FileSystemWatcher像这样挂在目标的父级上,而不是目标本身?

0 投票
1 回答
1808 浏览

c# - C# FileSystemWatcher 锁定文件夹

我正在尝试使用 C# 和 FileSystemWatcher 监视文件夹。一切正常,除了我可以删除我实际正在观看的文件夹

我曾经在 C 中使用 ReadDirectoryChangesW 执行此操作,方法是创建文件夹的句柄并将其锁定,从而防止从用户删除或重命名到该文件夹​​(我说的是实际受监控的文件夹,而不是它的内容)

有没有办法锁定该文件夹,这样人们在观看时就不会删除它?

(请注意,我不想更改文件夹的权限,因为它可能位于不支持权限的 FAT32 分区/USB 驱动器/etc 上)

0 投票
5 回答
179 浏览

c# - 监视文件的更改或冗余查询该文件会更有效吗?

我想知道使用 FileSystemWatcher 类查看文件/目录的更改是否会占用大量内存。我正在用 C# 开发一个桌面应用程序,它将在低性能计算机上连续在后台运行,我需要一些方法来检查各种文件是否已更改。我能想到几个解决方案:

  1. 使用 FileSystemWatcher 监视目录。
  2. 在经过的时间间隔上运行一个定时线程并手动检查它。
  3. 每次 actionhandler 线程运行时手动检查(程序偶尔会在一个动作上做一些事情)。

有什么建议么?

谢谢!

坏熊猫

0 投票
1 回答
284 浏览

file - 监视目录和显示文件更改的免费工具

我正在寻找一个工具来监视目录(带有子目录)并给我已更改的文件列表以及其中已更改的内容。我找到了一些工具,可以向我显示已更改的文件,但这对我来说还不够。

PS如果有人已经写过,我不想写。

PS2。如果您感到无聊,请随意关闭此问题,但它与编程相关,因为我需要该工具来分析 eclipse-plugins 的复杂数据结构。

0 投票
1 回答
2095 浏览

.net - 为什么我的 FileSystemWatcher 在一段时间后不引发事件?

我有一个小的 vb.net 应用程序利用连接到 UNC 路径的 FileSystemWatcher,在未引发来自观察者的未确定时间段(< 天)事件之后。

我正在捕获文件创建事件并将路径传递给 processfile 代码块:

0 投票
1 回答
75 浏览

c# - IDE 中的 FileSystemWatcher 事件

FileSystemWatcher 为我们提供了从更改到删除的不同类型的事件。我想知道为什么每当我使用 Visual Studio 2005 编辑文件并更改事件时,如果我使用的是记事本或记事本++ 和其他编辑器,我会收到删除事件?

0 投票
4 回答
10299 浏览

c# - 为什么我在尝试从正在写入的文件中读取时收到未处理的异常:System.IO.IOException?

我有两个 C# 应用程序,一个是逐行读取文件(文件 A)并将其内容写入另一个文件(文件 B)。

第二个应用程序使用 FileSystemWatcher 来查看文件 B 的更新时间,并报告程序启动时间和文件更改时间之间的行号差异。

这就是我现在要做的所有事情,最终我想读取文件上次读取时间和当前读取时间之间的行,但直到我可以获得暂停的行差异。

我为应用程序 1 提供的代码是;

我为应用程序 2 提供的代码是;

现在,当我尝试同时运行这两个应用程序时,我收到一个异常消息“未处理的异常:System.IO.IOException:该进程无法访问该文件,因为它正在被另一个进程使用”。

我为 ReadWrite 访问设置了两个文件流,为 FileAccess.Write 设置了一个文件流,为 FileAccess.Read 设置了另一个。

关于为什么我会得到这个例外的任何线索?

谢谢休。

0 投票
1 回答
321 浏览

java - 如何使用 JDK 7 区分文件删除和目录删除?

我正在使用 JDK 7 的 WatchService 来监视目录。

ENTRY_DELETE事件告诉我一个条目已被删除。我可以通过以下方式获取该条目的名称:

我想知道删除的条目是文件还是文件夹。当然,我尝试过,child.isDirectory()但那没有用,当然,因为该元素不再存在。

有没有什么方法可以在没有启发式的情况下判断被删除的元素是文件还是目录?

0 投票
5 回答
6201 浏览

c# - FileSystemWatcher 和 Windows 7

我正在编写一个监视网络目录并在 Windows Server 2008 机器上运行的工具,对于某些未使用 Windows 7 的计算机,FileSystemWatcher 的 OnChanged 事件正在从放置在网络驱动器上的文件中正确触发如果在 Windows 7 计算机上(一次)复制的文件数量超过 19 个,则不会触发任何事件,尽管如果文件是单独完成的,它会起作用。是否有解决方法,或者这只是 Windows 7 内核对 FSW 事件的行为方式?

只是为了澄清它在从 XP 机器复制时适用于数千个文件。(软件还在2008服务器机器上)。