【问题标题】:Could not copy "obj\Debug\{project}.dll" to "bin\{project}.dll"无法将“obj\Debug\{project}.dll”复制到“bin\{project}.dll”
【发布时间】:2014-05-06 19:39:23
【问题描述】:

最近,当我尝试运行我的项目时,Visual Studio Express 2013 for web 经常抛出此错误,我发现的唯一解决方法是退出并重新启动 Visual Studio 或(有时)完全重新启动 Windows。什么可能导致这样的事情?

完全错误转储

Error   19  Could not copy "obj\Debug\HobbsEventsMobile.dll" to "bin\HobbsEventsMobile.dll". Exceeded retry count of 10. Failed.    HobbsEventsMobile
Error   20  Unable to copy file "obj\Debug\HobbsEventsMobile.dll" to "bin\HobbsEventsMobile.dll". The process cannot access the file 'bin\HobbsEventsMobile.dll' because it is being used by another process.   HobbsEventsMobile

【问题讨论】:

  • 您找到解决此问题的永久解决方案了吗?如果你有请分享...
  • @usefulBee 不。我试过的都没有用。我确实发现cleaning 的解决方案通常会让我不必重新启动 Visual Studio。
  • 感谢您的快速回复。这个问题真的很烂。如果我找到解决方案,我会回来的。
  • 当我升级到 VisualStudio 2015 后问题消失了。我祈祷我可能不会再看到这个烦人的消息了。

标签: visual-studio windows-8 visual-studio-2013


【解决方案1】:

通过转到项目属性(在解决方案资源管理器中右键单击项目,然后选择“属性”选项),选择“构建事件”选项卡,在您的项目中创建预构建操作。添加此代码:

if exist "$(TargetPath).locked" del "$(TargetPath).locked"
if not exist "$(TargetPath).locked" move "$(TargetPath)" "$(TargetPath).locked"

https://social.msdn.microsoft.com/Forums/en-US/5b71eb06-5047-483d-8fd3-b75c102d41e9/unable-to-copy-from-objdebug-to-bindebug?forum=Vsexpressinstall&prof=required

【讨论】:

    【解决方案2】:

    1-选择您的项目

    2-从视图选择属性页面进入视图

    3-确保输出路径像那样是空的

    【讨论】:

    • 将输出路径映射到 obj\Debug\ 似乎效果更好,因为程序集不会被转储到您的根文件夹中。
    【解决方案3】:

    线索似乎在错误信息中:

    cannot access the file 'bin\HobbsEventsMobile.dll' because it is being used by another process
    

    我猜想这个 dll 仍然在以前的调试会话中使用。你能杀死拥有它的进程吗?如果您不确定哪个进程然后运行Process Explorer 并在dll 名称上执行Find - 这将显示仍然打开dll 的进程。

    另一个疯狂的猜测:您是否使用 Ctrl-F5 在调试器之外运行?如果是这样,那么这也可以解释为什么 dll 仍在使用中。

    【讨论】:

    • 我现在不在工作,但我今天注意到的另一件事(以及让我的生活更轻松)可能会有所帮助,那就是在解决方案上运行“干净”似乎可以解决问题。在再次启动调试器之前,我必须每次都进行清理,但这绝对是可以忍受的。
    • 太棒了!我不得不不断重启我的电脑。
    • 在任务管理器中找不到进程,只能在 PE 中找到。了解 PE 和其他故障排除实用程序已整合到一套工具中可能会有所帮助:docs.microsoft.com/en-us/sysinternals/downloads/…
    【解决方案4】:

    您也可以制作干净的解决方案,在再次构建之前,如果 .dll 文件仍然存在,请检查调试文件夹。如果干净的解决方案不起作用,您可以尝试更改文件名并构建解决方案。您会看到这些错误消失了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-25
      • 1970-01-01
      • 1970-01-01
      • 2021-12-10
      • 2018-03-22
      • 2013-07-05
      相关资源
      最近更新 更多