使用 Visual Studio 2010 beta,当我在 IDE 中运行我的应用程序进行调试时,第一次完美运行。但是,在关闭调试会话后,无论是关闭应用程序还是点击停止调试按钮,所有后续尝试调试应用程序的尝试都会失败,并出现以下错误:
错误1 无法将文件 "obj\Debug\Application.dll"复制到"bin\Debug\Application.dll"。由于该文件正在被另一个进程使用,因此无法访问文件“bin \ Debug \ Application.dll”。
SysInternals 的 Handle.exe 显示有句柄处于打开状态,但是即使我关闭了这些句柄,错误仍然存在。任何手动尝试删除该文件的操作都会导致“拒绝访问”的错误消息。
为了解决这个问题,我必须完全重新启动 Visual Studio,之后 Debug 会话仅能成功运行一次并再次停止。
我不确定这个问题开始发生的时间,但我相信它是比较近的。
更新: 当我强制关闭 Application.dll 上的 handle 后,我从 VS 得到以下错误:
错误1 无法将文件 "obj\Debug\Application.dll" 复制到 "bin\Debug\Application.dll"。请求的操作无法在具有用户映射的部分打开的文件上执行。
什么是“用户映射部分”?
更新2: 看起来这个问题发生在我在 Design 视图下打开一个 Form 尝试进行调试时。我将进行进一步故障排除并发布我的结果。
更新3: 我认为我已经将问题缩小到了使用 UserControl 的表单上。