【问题标题】:Visual Studio 2012 warning MSB3026: Could not copy DLL filesVisual Studio 2012 警告 MSB3026:无法复制 DLL 文件
【发布时间】:2013-03-19 08:01:48
【问题描述】:

我不断得到:

警告 MSB3026:无法复制 dll 错误。

我在解决方案中有几个项目。

在构建时,我也收到错误:

错误 47 无法将“myapp\bin\Debug*.dll”复制到“bin*.dll”。重试次数超过 10。失败。

应用程序在调试过程中停止响应,我每次都必须关闭 Visual Studio。这很烦人,但现在也变得令人沮丧。

我们有八名团队成员,我们所有人都遇到了同样的错误。我们无法重建解决方案,并且应用程序运行非常缓慢。

我们在项目中使用的一个东西是SignalR

这些是我迄今为止尝试过的事情。他们没有帮助我,但他们可能会帮助读者:

  1. 我已经尝试了 Visual Studio debugging/loading very slow 中描述的解决方案,但没有奏效。

  2. 我还尝试在每个项目属性中取消选中启用 Visual Studio 托管进程,但这也没有解决问题。

  3. 解决方案在http://www.richard-banks.org/2008/04/how-to-fix-problems-with-locked-files.html 中描述 和 http://social.msdn.microsoft.com/Forums/en-US/msbuild/thread/40ed753e-47af-4638-8a72-1d607102a05c/

  4. 项目上的预构建脚本: if exist "$(TargetPath).locked" del "$(TargetPath).locked" if exist "$(TargetPath)" if not exist "$(TargetPath).locked" move "$(TargetPath)" "$(TargetPath).locked"

  5. bin 文件夹不受源代码管理。

  6. 有时杀死 Microsoft.VisualStudio.Web.Host.exe 进程会释放对文件的锁定,但这并不总是有效。

  7. 我正在管理员模式下运行 Visual Studio。

  8. 我对源代码文件夹拥有完全访问权限(读/写权限)。

【问题讨论】:

  • 这是构建还是部署错误?
  • 当我尝试重建或清理解决方案时,我收到此错误。该应用程序的运行速度也很慢。在重建解决方案之前,我总是必须重新启动 Visual Studio 或终止 web.host.exe 进程。
  • 顺便说一句,我也尝试过这里描述的解决方案:richard-banks.org/2008/04/…social.msdn.microsoft.com/Forums/en-US/msbuild/thread/…
  • 您是否使用任何构建定义?
  • 是的,这也让我发疯了。 VStudio 2013 在这个问题上变得更糟了吗?我想知道是否能够在运行设置时更改代码会使这个问题变得更糟?

标签: .net asp.net-mvc visual-studio visual-studio-2012 signalr


【解决方案1】:

这通常是您的 bin 目录的权限问题。在 Windows 资源管理器中导航到它并确保只读已关闭。如果您在更改目录的读取状态时遇到错误,请确保您在管理员级别帐户上运行或相应提升。重新启用写入权限后,您的构建应该可以正常工作。

【讨论】:

  • 感谢您的回复。这是我检查的第一件事。 bin 文件夹是只读的。如果我取消选中并保存并再次打开属性,它会返回只读状态。一定有什么东西把它设置为只读的。
  • 如果删除只读没有坚持,您可能没有足够的权限来更改它,或者 IIS Express 可能已经脱轨。同样,请确保您是管理员。您可能还想以管理员身份临时打开 Windows 资源管理器(右键单击,以管理员身份运行),以避开任何 UAC 异常。如果这不起作用,请完全关闭 Visual Studio 并确保 devenv.exe 进程已终止。然后尝试再次更改它,然后重新打开 Visual Studio。
  • 谢谢克里斯。我今天早上试过了,但只要我在属性弹出窗口上单击“确定”,只读属性就会回来。 Visual Studio 已关闭。 IIS Express 未运行。该站点未使用常规 IIS。 Microsoft.VisualStudio.Web.Host.exe 也没有运行。那它一定是别的东西。我还杀死了所有 TFS 进程,但仍然没有运气。不过话说回来,bin 文件夹是只读的,但我现在可以删除 bin 文件夹中的所有文件。
  • 好吧,删除 bin 文件夹中的所有内容应该和其他任何内容一样好。如果文件不存在,Visual Studio 编写它应该没有问题。你还有问题吗?
  • 问题是每半小时关闭一次 Visual Studio 并手动删除文件并重新加载对我来说效果不佳。例如,现在,应用程序刚刚停止响应,我知道如果我关闭 Visual Studio 并删除 bin 文件夹中的文件,那么一切都会好起来,直到应用程序无法构建或在调试期间再次停止响应。
【解决方案2】:

清洁解决方案,然后重建解决方案为我解决了这个问题。
我第一次尝试执行清理时,遇到了访问冲突错误。
为了解决这个问题,我退出了 VS,手动删除了 bin 文件夹,然后重新打开它。 然后我可以执行清理。

这与权限或访问级别无关。
确保输出目录不是只读的并且以管理员身份运行 VS 没有帮助。

请参考Visual Studio “Could not copy” … during build

【讨论】:

  • 工作就像一个魅力
【解决方案3】:

我也遇到了这个问题,似乎是 VS 中的一个已知错误,在 2010 年、2012 年和 2013 年时不时地随机吸引人们,我在这里尝试了很多建议,以及在其他网站上发现的一些建议,没有工作。帮助我的是进入项目的调试属性并清除“启用 Visual Studio 托管进程”,重新构建所有并且不再出现错误。

希望这对你有用,但话虽如此,因为它是 VS 本身中已知的报告错误,我们可能都在修复症状并幸运地做一些事情来清除文件锁定,真正的问题仍然存在于 VS 中。

【讨论】:

  • 所以你在调试时检查了这个(因为它应该以某种方式改善调试体验)并在部署时取消检查?
  • VS2017 中没有这个选项
【解决方案4】:

几天前我遇到了这个问题并尝试了很多方法,但对我有用的解决方案是停止项目中某些类库使用的 Windows 服务。

【讨论】:

    【解决方案5】:

    我有同样的问题。似乎试图复制的 dlls 视觉工作室已损坏或类似的东西。我试图将特定的 dll 复制到我的桌面,但它失败并显示错误消息。所以我用新的dll替换了整个dll,这解决了我的问题。希望对您有所帮助。

    【讨论】:

      【解决方案6】:

      对我来说同样的问题。解决方案是我的调试器仍在后台运行程序。

      【讨论】:

        【解决方案7】:

        这对我有用:

        1. 关闭VS
        2. 删除 bin 和 obj 文件夹。
        3. 如果项目位于任何云服务同步文件夹(如 OneDrive)中,请将其移至本地常规文件夹。
        4. 删除解决方案文件夹中的 .suo 文件
        5. 再次打开 VS 并重建。

        一些类似的问题涉及 dll 被锁定,因此无法复制,在这种情况下,可以找到帮助 herehere

        【讨论】:

          【解决方案8】:

          这个问题一直困扰着我的开发。无论禁用只读安全权限和修改影响dll的访问权限。

          我通过确保解决方案的父文件夹上的安全权限允许计算机的管理员读取和写入访问权限,然后在管理员模式下运行 Visual Studio 来解决此问题。

          【讨论】:

          • 谢谢@jRobbins。我拥有对源代码文件夹的完全访问权限,并且我在管理员模式下运行 Visual Studio。
          【解决方案9】:

          我遇到了同样的问题。清除浏览器历史记录并构建项目。这解决了我的问题。希望对您有所帮助。

          【讨论】:

          • 浏览器历史和 VS 的构建过程有什么联系?
          【解决方案10】:

          我有两个项目

          • 来源/Repos/Project1
          • 来源/Repos/Project2

          项目 1 已将项目 2 添加为现有项目(两个不相邻的文件夹) 发生了错误消息。

          但是当我将 Project2(作为文件夹)移动到 Project 1 时,错误消息就离开了。

          新结构是:

          • 来源/Repos/Project1
          • 来源/Repos/Project1/Project2

          一旦我将 Project2 作为“现有项目”添加到项目 1 中,一切正常。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-10-16
            • 1970-01-01
            • 2013-04-28
            • 1970-01-01
            • 2020-06-28
            相关资源
            最近更新 更多