问题标签 [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 投票
4 回答
16465 浏览

c# - .NET filesystemwatcher - 它是文件还是目录?

有没有办法通过 FSW 确定文件或目录是否已被删除?

0 投票
2 回答
6170 浏览

vb.net - FileSystemWatcher 不工作

FileSystemWatcher在 Form1_Load 中添加如下:

我有一个 OnChanged 函数,它是一个简单的 MessageBox。不过,当我更改status.txt文件时,没有显示任何消息框。

0 投票
2 回答
1421 浏览

linux - 检查安装应用程序之前/之后所做的更改?

在 Linux 上,我需要知道从源代码编译和安装应用程序后添加/修改/移动/删除了哪些文件,即。命令行,Linux 等效于 venerale InCtrl5

是否有执行此操作的实用程序,或者我可以运行一组命令并向我显示更改?

谢谢你。


编辑:以下命令还可以,但我不需要知道发生更改的行号或更新了“./..”的行号:

0 投票
4 回答
1323 浏览

c# - 如何使用 FileSystemWatcher 监视目录并仍然允许正确删除它?

考虑这段代码:

有趣的是,这会在Directory.GetDirectories(dir).

删除监视的目录返回没有错误,但 Directory.Exists() 仍然返回 true 并且该目录仍然列出。此外,访问该目录会为任何程序产生“拒绝访问”。一旦带有 FileSystemWatcher 的 .NET 应用程序退出,目录就会消失。

如何在允许正确删除目录的同时观看目录?

0 投票
4 回答
5228 浏览

c# - C#:使用 FileSystemWatcher 监视复制或移动的文件

我在这里和网络上遇到了几个“解决方案”,但似乎没有一个符合要求。

我要做的是让应用程序监视文件夹中的新文件(通过创建、移动或复制)并对这些对象执行操作。在这种情况下,我转向 FileSystemWatcher 类来执行此操作。

问题是文件 FileSystemWatcher.Created 事件在创建整个文件之前被触发(通过大文件的副本最明显)。

有没有办法让这个事件在文件创建结束而不是开始时触发?我尝试了 FileSystemWatcher.NofityFilter 属性的各种组合,但没有成功。

提前致谢!:)

0 投票
6 回答
5883 浏览

c# - FileSystemWatcher 不报告锁定文件中的更改

我正在使用这样的 FileSystemWatcher 监视文件夹:

当我在该文件夹中的记事本中打开一个新文件并保存它时,我会收到一条通知。如果我继续写然后保存,我会收到通知。如果我关闭文件并保存它,我会收到通知。正是我想要的。

但是,事实证明,如果我在该文件夹中创建一个文件并将其共享模式设置为 FileShare.Read,然后写入它,则在文件关闭之前我不会收到任何通知。另一种解决方法是打开文件(例如在记事本中),这显然会导致其状态被更新,然后我的监控应用程序会收到通知。另一个解决方法是我可以在 Windows 资源管理器中进行刷新,这再次导致文件状态被更新。

有趣的是,如果我在进行更改时查看 Windows 资源管理器,我会注意到:

  1. 如果文件被共享用于读写,一旦我保存它,它的大小将立即在 Windows 资源管理器中更新。
  2. 如果文件共享为只读,它的大小不会在 Windows 资源管理器中立即更新,除非我手动刷新窗口。

因此,我的监控应用程序似乎与 Windows 资源管理器具有相同的行为。我正在考虑运行一个只扫描文件夹中文件的线程,但我想知道在这种情况下是否有更优雅的事情要做。

顺便说一句,我使用的是 Win7,我不确定其他 Windows 版本是否也会出现此问题。

谢谢!

编辑:在 C++ 中使用 ReadDirectoryChanges 得到了相同的结果。实现我之前谈到的线程也没有帮助。我想知道 Windows Explorer 中的 F5 实际上在做什么,因为它确实会导致报告更改。

0 投票
3 回答
4533 浏览

c# - 使用 File.OpenRead 打开文件时出现 System.IOException

当我打开文件以解压缩其内容时,出现以下异常。当我在 Windows 资源管理器中选择文件或将鼠标悬停在显示工具提示的文件时会发生这种情况。

有没有办法等到文件不再使用然后读取它?基本上我只是查看任何新 zip 文件的文件夹,解压缩 zip 文件的内容,然后将其删除。

事件处理程序:

0 投票
6 回答
5534 浏览

c# - 在 C# 中检测文件读取

我正在使用 FileSystemWatcher 检查文件何时被修改或删除,但我想知道是否有任何方法可以检查文件何时被另一个应用程序读取。

示例:我的硬盘上有文件 C:\test.txt,并且正在使用 FileSystemWatcher 观看它。另一个程序(不在我的控制之下)去读取那个文件;我想捕捉那个事件,如果可能的话,检查什么程序正在读取文件,然后相应地修改文件的内容。

0 投票
3 回答
965 浏览

asp.net - FileSystemWatcher 事件上的 ASP.net Response.Redirect

我没有设法在新的 FileSystemWatcher 事件上使用 Response.Redirect(或 Response.Write)。

0 投票
2 回答
375 浏览

c# - 如何在 C# 中过滤系统文件

我正在使用FileSystemWatcher跟踪文件系统的任何更改。但是我的客户不想要任何系统文件更改记录。他只想要“由用户更改”的记录。我怎样才能做到这一点?