无法在Visual Studio中将文件“* \ bin \ debug \ * .dll”复制到“bin \ * .dll”

时间:2010-01-10 12:36:37

标签: visual-studio

我遇到了这个问题

  

无法复制文件   "*\bin\debug\*.dll""bin\*.dll"

当发生这种情况时,由于上述错误,编译将失败。

编辑:我知道该文件被devenv.exe进程锁定导致上述错误,因为如果我重新启动VS,那么问题就会消失,但无论如何都要解决这个问题重新启动VS?

4 个答案:

答案 0 :(得分:6)

我过去遇到过这种情况,正如Sam所说,重启VS似乎有效,但不是你想要的。

但是,MSDN论坛上有一个帖子“Unable to copy from obj\debug to bin\debug”,它提供了一些建议:

选项1

  

在您的帐户中创建预构建操作   通过转到项目属性进行项目   (右键单击中的项目   解决方案资源管理器,并选择   属性选项),选择Build   活动标签。添加以下代码:

     

如果存在“$(TargetPath).locked”del   “$(TargetPath).locked”如果不存在   “$(TargetPath).locked”移动   “$(TargetPath)”“$(TargetPath).locked”

     

将文件复制到其他文件   name,并允许继续构建   成功。

随后跟进:

  

但是一个小改进是   还需要让黑客工作   如果构建是从头开始运行的,例如   干净后:

     

如果存在“$(TargetPath).locked”del   “$(TargetPath).locked”如果不存在   “$(TargetPath).locked”如果存在   “$(TargetPath)”移动“$(TargetPath)”   “$(TARGETPATH).locked”

选项2

  

我有类似的问题,我解决了   它排除在项目中   [选择的源库]   文件夹bin和obj。

HTH的

答案 1 :(得分:2)

FWIW,这个bug已经存在了YEARS,MS仍然没有修复它。只需谷歌“MSB3021”即可查看有关它的所有帖子。

答案 2 :(得分:1)

我之前也见过这个问题,如果我没记错的话我只是关闭了Visual Studio并重新启动它。如果你知道锁定文件的过程,你需要找到一种方法来a)让进程释放锁,b)杀死进程

答案 3 :(得分:0)

我看到了这个问题,我在VBprojects文件夹中找到了我项目的调试文件夹并删除了文件,然后我重建了应用程序并且它正常工作