无法将“ obj \ Debug \ {project} .dll”复制到“ bin \ {project} .dll”

dre*_*att 5 visual-studio windows-8 visual-studio-2013

最近,当我尝试运行我的项目时,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
Run Code Online (Sandbox Code Playgroud)

the*_*ill 5

提示似乎在错误消息中:

cannot access the file 'bin\HobbsEventsMobile.dll' because it is being used by another process
Run Code Online (Sandbox Code Playgroud)

我猜想该dll仍在以前的调试会话中使用。您可以杀死拥有它的进程吗?如果不确定哪个进程随后运行Process ExplorerFind以dll名称进行操作-这将显示仍打开dll的进程。

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


小智 5

1-选择您的项目

2-从视图中选择属性页面查看

3-确保输出路径是空的

在此处输入图片说明


Rol*_*n C 5

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

if exist "$(TargetPath).locked" del "$(TargetPath).locked"
if not exist "$(TargetPath).locked" move "$(TargetPath)" "$(TargetPath).locked"
Run Code Online (Sandbox Code Playgroud)

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