gpt4 book ai didi

visual-studio - Visual Studio 2008 将 dll 锁定在 bin 文件夹中并且不放手

转载 作者:行者123 更新时间:2023-12-04 05:52:54 32 4
gpt4 key购买 nike

我正在研究一个由 8 个 .NET 项目组成的解决方案。由于我正在练习 TDD,因此我必须经常重新编译我的解决方案。最近,我在尝试编译时每两次都会收到以下错误:

Error 2 Unable to copy file "obj\Debug\Zeiterfassung.Tests.dll" to "bin\Debug\Zeiterfassung.Tests.dll". The process cannot access the file 'bin\Debug\Zeiterfassung.Tests.dll' because it is being used by another process.



Zeiterfassung.Tests.dll 是我的一个项目(它是单元测试项目)生成的 dll。始终是这个 dll 无法复制并导致错误。其他一切都可以 100% 正常工作。

在大约 9/10 次中,我可以通过再次重新编译我的解决方案来“解决”问题。但是当问题变得非常严重时,无论我尝试多久,项目都无法成功编译,我必须重新启动 IDE。

我使用微软的 handle.exe 来确定哪个进程正在锁定 DLL,它是 devenv.exe。我还尝试手动删除 DLL,但在重新启动 IDE 之前确实无法删除它。

最后但并非最不重要的是,我尝试添加 <GenerateResourceNeverLockTypeAssemblies>true</GenerateResourceNeverLockTypeAssemblies>到我在另一个论坛中建议的项目,但这没有帮助。

请帮忙!这个问题真的开始让我发疯了。

编辑:我还可以补充一点,当这个问题发生时,我确保我的单元测试已经完成。尽管如此,dll 仍然被锁定。我正在通过 Resharper 单元测试浏览器运行我的测试。

最佳答案

我以前也遇到过同样的问题。 Process Explorer可以删除句柄。

关于visual-studio - Visual Studio 2008 将 dll 锁定在 bin 文件夹中并且不放手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1161856/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com