关注此问题:How can I unlock a file that is locked by a process in .NET,如何以编程方式获取锁定在特定文件夹及其子文件夹中的文件列表?
我正在使用Windows 2003,.NET 3.5,C#3.0。
更新:一些背景......基本上我们在共享服务器上存档已关闭的网站。从IIS中删除该站点后,我们将该站点的文件夹结构移动到存档,并将其保存6周。即使IIS站点和FTP已被停止和删除,我们仍然会在移动过程中遇到锁定的文件。所以很高兴知道什么仍然锁定它。
答案 0 :(得分:2)
在另一个问题中回答:How to check for file lock?
唯一的方法是尝试所有这些并将它们添加到列表中,如果它抛出异常。 如上面的问题所述,它不是一个可靠的列表,但只能概述一个特定的时间点。
答案 1 :(得分:0)
实时检测锁定文件的唯一可靠方法是编写设备驱动程序(如filemon),但我不认为你可以在C#中执行此操作。