14

如果这是重复的问题,请指向正确的链接,我将删除此问题。

我知道在 VS Team System 中我可以使用代码分析,但我使用的是 VS Professional。

你能告诉我如何集成 FxCop 和 Visual Studio 吗?我不想将 FxCopCmd.exe 添加到我的构建后事件中以在每次编译时运行 FxCop。当我通过右键单击解决方案资源管理器中的项目进行选择时,我希望能够运行 FxCop。

谢谢你的帮助。

4

3 回答 3

24

我花了一段时间终于弄明白了。这并不理想,但它有效。

更新: 我创建了一个带有分步说明的帖子:

感谢aamit,他提供了使我走上正轨的链接,即使 MSDN 文章中的解决方案不起作用。给他+1;他应得的。

1.) 在 FxCop GUI 中保存您的项目。

重要

  • 一种。将项目保存在解决方案所在的同一目录中。
  • 湾。将 FxCop 项目名称与您的解决方案名称相同,并包含 .sln 扩展名。

例如:如果您的解决方案名称是MySolution.sln,则 FxCop 项目名称将是MySolution.sln.FxCop

2.) 在 Visual Studio 中选择工具 -> 外部工具

3.) 在外部工具对话框中输入以下信息:

  • 标题:FxCop
  • 命令:C:\Program Files\Microsoft FxCop 1.36\FxCopCmd.exe
  • 参数:/c /p:"$(SolutionDir)\$(SolutionFileName).fxcop" /cXsl:"C:\Program Files\Microsoft FxCop 1.36\Xml\VSConsoleOutput.xsl"
  • 初始目录:C:\Program Files\Microsoft FxCop 1.36

确保选中“使用输出窗口”复选框。

就是这样。它对我有用,我希望它对你有用。

于 2009-05-08T22:09:39.723 回答
16

在 Visual Studio 中将 FxCop 设置为外部工具怎么样?这是链接:

http://msdn.microsoft.com/en-us/library/bb429389(VS.80).aspx

于 2009-05-08T21:01:58.780 回答
4

我运行一个非常类似于 Vadim 的命令作为项目的构建后事件。这样,我一重新编译就会得到 FxCop 错误。但是我们的命令几乎是一样的;很高兴知道世界上至少有两个人得出了相同的结论!

这些错误确实显示在 Visual Studo 的错误列表窗格中。

"%ProgramFiles%\Microsoft FxCop 1.36\FxCopCmd.exe"
/文件:“$(目标路径)”
/安慰
/dictionary:"$(SolutionDir)Res\FxCop\CustomDictionary.xml"
/searchgac
/忽略生成的代码

(您可以省略 /dictionary 参数;它只指向我的一个自定义字典文件,因为 FxCop 将一些变量名称标记为匈牙利表示法,而实际上它们不是。我还对命令进行了换行以提高可读性。)

它确实使构建时间更长,但很高兴立即看到错误并为每个项目定制命令设置。祝你好运!

于 2009-05-09T13:58:10.130 回答