动机: 我在构建过程中集成了fxcop,这使得每次目标更改时都会运行fxcopcmd.exe,或者只要上次运行fxcop时出现警告。
但是当一个人在工作室工作时,devenv.exe经常决定在后台编译项目,无论出于何种原因。例如,当我向解决方案添加新项目时,我注意到fxcopcmd.exe运行,这意味着后台构建已经开始。还有其他时间。
所以,我希望在使用devenv构建时抑制fxcop。我们的CI服务器使用msbuild构建,所以没问题。
顺便说一句,如果有办法禁用后台构建,那可能会很棒。
答案 0 :(得分:1)
有一个属性 BuildingInsideVisualStudio 会告诉你这个。
例如,将 msbuild.exe 和 devenv.exe 与.csproj一起使用时的结果与以下AfterBuild目标定义进行比较
<Target Name="AfterBuild">
<Message Text="BuildingInsideVisualStudio: $(BuildingInsideVisualStudio)" Importance="high"/>
</Target>
Sayed Ibrahim Hashimi
我的书:Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build
答案 1 :(得分:0)
我唯一能想到的是
在VS 2008中将后台编译器添加到C#中,据我所知,这是不可配置的。 VS 2010应该是超可配置的,所以可能会改变
编辑:将我的列表格式化得更好