8

我的程序中不断出现该异常。我如何知道哪个进程锁定了它,无论是通过程序代码还是通过 Windows 执行某些操作?

System.IO.IOException : The process cannot access the file 'file.ext' because it is being used by another process.

4

3 回答 3

11

您可以使用 ProcessExplorer 搜索文件:

只需运行它(也许您需要以管理员权限启动它),点击Ctrl-F并输入被锁定文件的名称 - 它会找到所有与给定名称匹配的打开句柄,并告诉您它属于哪个进程。

于 2010-08-02T08:36:26.403 回答
2

您可以使用诸如ProcessMon查看锁定文件的进程之类的工具。

于 2010-08-02T08:33:11.950 回答
1

看看这个:http ://www.emptyloop.com/unlocker/

我一直在使用它,告诉您哪个进程锁定了它,并让您有机会完全解锁它。当您调试图像处理应用程序并且它在没有正确关闭文件的情况下爆炸时特别有用。

希望这可以帮助!

肖恩

于 2010-08-02T08:32:57.503 回答