7

我在 Visual Studio 2010 中构建一个项目,构建失败,因为它无法将 assemblyname.dll 文件从 obj 复制到 bin 文件夹。确切的错误信息是:

错误 7 无法将文件“obj\Debug\AssemblyName.dll”复制到“bin\AssemblyName.dll”。无法对打开了用户映射部分的文件执行请求的操作。

我认为这是因为 bin-folder 中的前一个文件不可访问。当我尝试手动删除文件时,出现错误“无法完成该操作,因为该文件已在另一个程序中打开”。如果我尝试查看使用 Unlocker 锁定文件的应用程序,我不会得到任何结果(未找到锁定句柄)。

如果我重新启动 Visual Studio,错误就会消失,但会在一两次构建后再次发生。不用说,这严重拖慢了我的速度。任何建议如何开始解决这个问题?

4

6 回答 6

18

Windows 8 上的 VIsual Studio 2012。我在我的项目中收到了相同的错误消息。重新启动 Visual Studio 或手动清理 obj 文件夹没有帮助。最后我关闭了所有打开的文件(Windows -> 关闭所有文档),问题就消失了。

于 2013-06-07T21:02:58.217 回答
8

此行为是由于新安装的名为 Visual Studio 成就的 Visual Studio 扩展 (http://visualstudiogallery.msdn.microsoft.com/bc7a433b-b594-48d4-bba2-a2f24774d02f)

我注意到 .pdb 文件被 FxCop 锁定(使用 Unlocker),我认为成就 - 扩展使用它。禁用扩展后,我不再收到上述错误。

于 2012-02-09T06:34:33.953 回答
1

此错误已在最新版本的扩展 (>1.7) 中得到修复。它是作为测试版发布的,顺便说一句...

于 2012-04-19T21:02:04.560 回答
0

VS 的这种行为甚至经常发生在我的计算机上(以及我同事的计算机上)。

根据我的经验,在以下情况下会更频繁地发生:

  • 我在编译时在设计中打开了一些表单
  • 我通过按下 VS 中的“停止”按钮而不是退出应用程序来停止应用程序的执行

因此,在编译之前关闭设计中的表单,并退出应用程序而不是停止它,在一定程度上缓解了这个问题......但它仍然会发生 :-|

我的电脑是 Win 7 x64 SP1,带有 VS 2010 SP1,8Gb 内存,没有交换文件

于 2012-02-02T08:26:51.893 回答
0

平台:Windows 8 专业版、Visual Studio 2012

我发现当我在 Windows 资源管理器中访问该文件夹时收到此错误。

我正在使用 Visual Studio 2012 创建 PDF 文档。要查看示例文档,我将在解决方案资源管理器中单击鼠标右键,然后在文件资源管理器中使用打开文件夹。

在 Windows 7 上,如果实际 PDF 文档在预期的 Adob​​e Reader 中打开,我会收到 SYSTEM.IO 错误。在 Windows 8 中,如果我打开文件夹,我会收到上述错误。我怀疑与 Windows 8 预览版存在冲突。

如果我关闭文件夹并运行程序,它工作正常。

于 2012-12-04T18:52:44.257 回答
0

检查是否在 Visual Studio 中打开了 dll。我在visual studio中打开dll,发生了这个错误!!

于 2020-06-27T10:45:09.793 回答