我一直在我的程序中获得该异常。我怎么知道哪个进程锁定了它,无论是通过程序代码还是通过对Windows执行某些操作?
System.IO.IOException : The process cannot access the file 'file.ext' because it is being used by another process.
答案 0 :(得分:10)
您可以使用ProcessExplorer搜索文件:
只需运行它(也许你需要以管理员权限启动它),点击Ctrl-F
并输入被锁定文件的名称 - 它将找到所有与给定名称匹配的打开句柄,并告诉它你属于哪个进程。
答案 1 :(得分:2)
您可以使用ProcessMon
之类的工具查看锁定文件的进程。
答案 2 :(得分:1)
看看这个:http://www.emptyloop.com/unlocker/
我一直使用它,告诉你哪个进程锁定了它并让你有机会完全解锁它。特别适用于调试图像操作应用程序时,它会在没有正确关闭文件的情况下轰炸。
希望这有帮助!
肖恩