【发布时间】:2013-04-24 08:21:03
【问题描述】:
我有以下情况:我正在使用 .NET (C#) 中的 FileSystemWatcher 类监视一个文件夹。通过这个类,我可以知道文件是否被删除,但我想要以下行为:通过取消删除来防止文件被删除并将文件移动到我自己的临时目录,以便用户可以恢复文件。
是否有可能实现这种行为?我必须走的路是什么?
我可以参与一些全球性事件吗?是否只能使用自己的文件系统驱动程序?
还是在得知文件被我自己用WinAPI函数CreateFile删除后恢复文件?
提前感谢您的帮助
【问题讨论】:
-
为什么不直接使用windows回收站呢?用户可以从那里恢复它(如果你愿意,也可以从你的应用程序中以编程方式)
-
删除文件有哪些用例?是你的应用吗?外部(即资源管理器)?即它是你自己的应用程序,防止而不是恢复。
-
用户可以从资源管理器、命令行等中删除文件。问题是用户可以硬删除此类文件。在这个特殊的文件夹中,应用程序应该可以在一段时间内恢复已删除的文件。
-
为了保护他们不做(一些)愚蠢的事情,你可以打开卷快照服务。
标签: c# windows winapi filesystems hook