ICopyHook.CopyCallback是否有文件或替代文件?

时间:2011-08-09 15:19:50

标签: c# windows file-io filesystemwatcher shell-extensions

我们使用 ICopyHook.CopyCallback shell扩展来检测删除,移动,创建文件夹,但不是文件 Link,如何检测用户是否正在从C#Application中删除文件,或者如何处理用户的删除操作? 例如:用户在f1.txt上按Shift + DEL,然后操作系统询问“你是否确定要删除'f1.txt'?,如果用户按'是',那么C#应用程序将处理删除操作以透明方式将'f1.txt'移动到某个隐藏文件夹{例如} ???

注意:我认为FileSystemWatcher无法执行此任务..

1 个答案:

答案 0 :(得分:2)

您需要一个文件系统过滤器驱动程序,它将拦截文件删除或文件移动请求(文件移动到回收站)并将采取相应措施。

请注意,由于没有在文件系统级复制文件的操作(ICopyHook只能捕获资源管理器本身或通过shell API函数执行的操作),因此您将无法使用文件系统跟踪“复制”过滤器驱动程序(或通过任何其他方式)。