我通过项目属性为我的.dll项目设置了一个输出文件夹,我称之为“输出”。
问题是,从一个空的Output文件夹,我第一次构建项目时,没关系。第二次,我收到以下错误:
错误328无法将文件“obj \ Release \ MyLibrary.dll”复制到 “...... \输出\发布\ MyLibrary.dll”。该过程无法访问 文件'...... \ Output \ Release \ MyLibrary.dll'因为正在使用它 通过另一个过程。
“另一个进程”是来自Visual Studio的vshost.exe。由于它不断访问MyLibrary.dll,因此无法删除或替换,从而导致错误。这样可以保持Output文件夹上的MyLibrary.dll不会更新。但是我在我的解决方案中有其他.dll项目,但这并没有发生。
到目前为止我用来更新它的解决方案是关闭VS(从而关闭vshost.exe),然后运行.bat文件删除文件Output \ Release \ MyLibrary.dll,然后再次打开VS并重建它的项目。
我对vshost.exe的作用知之甚少,所以我不知道从哪里开始从root中清除这个问题。我不知道为什么这会发生在特定的.dll上。我很感激任何有助于我调查这种情况的想法。