首页 文章

该进程无法访问该文件,因为该文件正由另一个进程使用

提问于
浏览
25

我有一套夜间报道 .

有时我得到例外:

进程无法访问该文件,因为该文件正由另一个进程使用

如何判断文件中包含哪些进程?我认为这是迈克菲,但我需要证明这一点 .

10 回答

  • 1
    Attachment data = new Attachment(@"c:\filename");
    
    'send email....
    
    data.Dispose();
    
  • 0

    我试图启动一个Java程序并得到消息 . 查看任务管理器,当我杀死该进程时,已经有一个Java任务正在运行(循环?),我的进程能够运行 .

  • 9

    处理后的GC.Collect()应该修复它

  • 0

    问题是.NET中的MailMessage持有文件附件 . 我不得不对附件进行处理然后才有效 .

  • 3

    使用Process ExplorerProcess Monitor等工具 .

  • 0
    • Process Explorer>查找>查找句柄>键入您的文件名 .

    • Unlocker . 尝试打开它,如果它有锁,解锁器将打开并显示锁定它的程序 .

  • 19

    这里有一些工具可以告诉和解锁锁定的文件:http://ccollomb.free.fr/unlocker/

  • 0

    证实 . 我有类似的问题,并做了格雷格所说的 .

    在发送消息后的 finally 块中,我只是把它放在那里,然后它释放了文件句柄:

    foreach(Attachment a in message.Attachments) a.Dispose();
    
  • 1

    我只是有同样的问题,但在我的情况下,我试图删除Visul Studio 2012中的.mdf文件 . 没有太多关于错误的信息,以帮助我解决这个问题,所以我来到这里寻求帮助 . 然后我意识到即使它是一个类似的问题,它也是一个我必须处理的不同过程 .

    我做的是尝试删除Windows资源管理器中的.mdf文件,然后我给了我一个错误,即SQL Server 2008 R2实际上保留了该文件,即使我删除了数据库 . 一旦我新了,我所要做的就是关闭SQL Server 2008 R2并尝试再次删除该文件并且它有效 .

    如果您需要有关如何打开和关闭SQL Server 2008 R2的说明,请参阅下面的链接 .

    Turn on and off SQL Server

  • 0

    Filemon可能是您正在寻找的工具 .

    (甚至Process Monitor显然已经取代了FileMon . )

相关问题