Here is the target that I used to generate an
FxCop report and integrate it seamlessly into the CC.NET web dashboard.
<FxCop
TargetAssemblies="$(TargetAssembly)"
RuleLibraries="@(FxCopRuleAssemblies)"
AnalysisReportFileName="FxCop.xml"
FailOnError="False"
ApplyOutXsl="False"
OutputXslFilename="Vendor\FxCop\Xml\FxCopReport.xsl"
Verbose="False"
IncludeSummaryReport="True"
WorkingDirectory="$(MSBuildProjectDirectory)"
ToolPath="$(MSBuildProjectDirectory)\Vendor\FxCop"/>
The key here is to be sure that ApplyOutXsl is set to False. If it's set to True, then the output will not get logged into the CC.NET log, which means when the dashboard tries to find it, it won't be there.
The other thing of note here is that I have all of my third-party tools, like FxCop, Sandcastle, Enterprise Library, etc. in a Vendor subdirectory of my project. By doing this, I can pick up the one Vendor folder and get another project up to speed quickly (through copying or Subversion externals).