在构建我的VS2012 C#项目期间,我不断收到此错误
Error 41 Could not copy "obj\Debug\WeinGartner.WeinCad.exe" to
"bin\Debug\WeinGartner.WeinCad.exe".
Exceeded retry count of 10. Failed.
Error 42 Unable to copy file "obj\Debug\WeinGartner.WeinCad.exe" to
"bin\Debug\WeinGartner.WeinCad.exe". The process cannot access the file
'bin\Debug\WeinGartner.WeinCad.exe' because it is being used by another
process.
Run Code Online (Sandbox Code Playgroud)
现在我已经发现杀死这个过程了
Weingartner.WeinCad.vhost.exe
Run Code Online (Sandbox Code Playgroud)
工作(有时),但这让我很紧张.有什么方法可以阻止这种情况发生吗?
我的调试器设置是

我在本地机器上遇到了一些奇怪的问题.问题是间歇性的,但经过一些解决方案的重建后,WiX项目开始抛出ICE验证错误.
如果我进入我的AppData\Local\Temp文件夹并删除包含MSI的所有临时文件夹,解决方案将再次编译.不久之后,问题又开始发生了.必须不断清理临时文件夹并不是一个可持续或令人满意的解决方案.
还有其他人遇到过这个问题吗?验证错误代码似乎始终是ICE30,ICE38,ICE64和ICE91的组合
更新:
根据要求,以下是最近失败的条目:
错误LGHT0204:ICE38:ICE内部错误1002. API返回:1615.
错误LGHT0204:ICE38:错误2235:/OU.AppFramework.Includes.msi,_Profile,UPDATEDirectorySET_Profile= 0
错误LGHT0204:ICE64:ICE内部错误1001. API返回:1615.
错误LGHT0204:ICE64:错误2242:OU.AppFramework.Includes.msi,_Profile,ALTER TABLEDirectoryADD_ProfileSHORT TEMPORARY HOLD
错误LGHT0204:ICE91:ICE内部错误1001. API返回:1615.
错误LGHT0204:ICE91:错误2242: OU.AppFramework.Includes.msi,_Profile,ALTER TABLEDirectoryADD_ProfileSHORT TEMPORARY HOLD
有趣的是,这次失败是在我昨晚离开办公室之前发生的,当我今天早上进来时解决方案编译好了.由于它似乎以WiX构建MSI的临时目录为中心,它可能是锁定文件的构建过程吗?
更新2:
现在我们又回到600多个错误,大多数重复这个错误:
错误LGHT0204:ICE30:ICE内部错误100. API返回:1615
错误LGHT0204:ICE30:错误2235:AppFramework.Includes.msi,_ICE30SFN,SELECTDirectory_Parent,Directory,DefaultDir,_ICE30SFN,_ICE30LFNFROMDirectoryWHEREDirectory.Directory=?ANDDirectory_Parent<>?
更新3:
即使在尝试了@limpan的建议后,问题仍然存在.当灯光试图访问MSI时,由于MSI输出文件夹被锁定而导致灯光发出一些警告:
警告549目录'\ AppData\Local\Temp\2opu3hxf'正在使用中,无法删除.light.exe
观察:
在我们的Jenkins构建服务器上,我们看到很多msbuild.exe进程(~100)在作业完成后闲置,大约20mb内存使用率和0%CPU活动.
使用不同版本的stylecop的构建间歇性地失败:
workspace\packages\StyleCop.MSBuild.4.7.41.0\tools\StyleCop.targets(109,7):
error MSB4131: The "ViolationCount" parameter is not supported by the "StyleCopTask" task.
Verify the parameter exists on the task, and it is a gettable public instance property.
Nuget.exe 间歇性地退出,出现以下访问冲突错误(0x0000005):
.\workspace\.nuget\nuget install .\workspace\packages.config -o .\workspace\packages"
exited with code -1073741819.
MsBuild通过Jenkins Matrix作业以下列方式启动,启用了"BuildInParallel":
`msbuild /t:%Targets% /m
/p:Client=%Client%;LOCAL_BUILD=%LOCAL_BUILD%;BUILD_NUMBER=%BUILD_NUMBER%;
JOB_NAME=%JOB_NAME%;Env=%Env%;Configuration=%Configuration%;Platform=%Platform%;
Clean=%Clean%; %~dp0\_Jenkins\Build.proj`
Run Code Online (Sandbox Code Playgroud) 为了给出一些背景故事,我曾经在VS2012上遇到过这个问题.随机(并非所有时间),当我通过vs2012在IE上运行我的公司Web项目时,它会暂停一段时间并最终无法加载.我注意到我的机器基本上很难做任何事情,并且几乎停止了.
检查任务管理器将显示HUNDREDS,如果没有产生数百个MSBuild.exe和Conhost.exe实例,则填充它们可能的每个可能的内存字节(在机器上最多8个演出).我只有一些需要构建的解决方案.
我从未发现真正的原因,但VS2012的最终更新我认为这个问题已经持续了好几个月.
快进到今天,我现在在一台机器上有16演出的ram,我现在正在运行VS2015 14.0.23107.
我最近注意到无限生成的MSBuild和Conhost的问题又回来了,这次填满了我所有的16个内存.
我尽可能多地搜索了互联网,但我没有找到任何类似于我所遇到的主题.
我知道这是微软的一个"功能",如下所述:
和其他地方.
但是我所看到的没有人有这么多MSBuild和Conhosts产生的问题,他们消耗了每一个字节的内存,你被迫重启你的机器或等到它们全部死掉(这似乎不会发生在任何特定的时间量).
最近发生这种情况时,我能想到的唯一环境变量是:
有没有其他人有这个问题,你有没有找到原因?
-编辑-
更新:如果修复它我不是100%,但是自从我做了这些修改后我还没有得到它.
从本质上讲,我们在这里有两种不同的解决方案.它们非常相似,唯一的区别是它们中的一个具有更少的其他项目/依赖性.
我经常在这两个解决方案之间切换,并且我相信其中一个解决方案配置为至少一个项目检查了"使用扩展诊断进行调试".
此外,我将构建选项设置为同时执行多达8个并行构建.
我们的开发经理认为,在与并行构建混合的解决方案之间进行某种切换可能会导致某种类型的损坏/错误,从而产生数千个MSBuild.
我们已经解决了"使用扩展诊断进行调试"的问题,并且我已经将构建选项更改为仅1个并行构建,并且从那时起就没有问题.