【发布时间】:2013-10-02 22:21:06
【问题描述】:
我喜欢 VS2012 中包含的代码分析。但是有点烦人的是警告只能在代码分析窗口中处理,而不是通过 F4 逐步完成构建输出。
有没有办法克服这个限制?如何像普通编译器输出一样格式化静态代码分析的输出(即不仅打印文件名,还打印被检查文件的正确路径)?
我没有使用 FxCop,因为我使用的是非托管代码。
【问题讨论】:
标签: visual-studio-2012 code-analysis unmanaged
我喜欢 VS2012 中包含的代码分析。但是有点烦人的是警告只能在代码分析窗口中处理,而不是通过 F4 逐步完成构建输出。
有没有办法克服这个限制?如何像普通编译器输出一样格式化静态代码分析的输出(即不仅打印文件名,还打印被检查文件的正确路径)?
我没有使用 FxCop,因为我使用的是非托管代码。
【问题讨论】:
标签: visual-studio-2012 code-analysis unmanaged
对于非托管代码分析,MSBuild 脚本使用/analyze:quiet 而不是/analyze,以防止将结果写入错误列表。更改行为的最简单方法是修改您的Microsoft.CodeAnalysis.Targets 文件(通常位于C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\CodeAnalysis\Microsoft.CodeAnalysis.Targets)以避免指定安静模式。即:换行
<AdditionalOptions Condition="'$(PlatformToolsetVersion)'>='110'">%(ClCompile.AdditionalOptions) /analyze:quiet</AdditionalOptions>
到
<AdditionalOptions Condition="'$(PlatformToolsetVersion)'>='110'">%(ClCompile.AdditionalOptions) /analyze</AdditionalOptions>
【讨论】:
fxcopcmd.exe 可执行文件以运行分析,CodeAnalysisAdditionalOptions 将命令行选项插入调用。如果您增加 VS 构建输出的详细程度,您将能够在 VS 输出窗口中看到任务生成的完整命令行。