【问题标题】:How to integrate FxCop and VS 2008?如何集成 FxCop 和 VS 2008?
【发布时间】:2010-10-24 21:51:38
【问题描述】:

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

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

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

感谢您的帮助。

【问题讨论】:

    标签: visual-studio-2008 integration fxcop


    【解决方案1】:

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

    更新: 我用step by step instructions 创建了一个帖子:

    感谢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 文件\Microsoft FxCop 1.36

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

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

    【讨论】:

    • 如果我使用命令行调用 fxcopcmd.exe,SuppressMessage 属性是否有效?
    【解决方案2】:

    如何在 Visual Studio 中将 FxCop 设置为外部工具?这是链接:

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

    【讨论】:

    • +1 用于提供链接。链接中的信息不起作用,但它让我知道了如何解决这个问题。谢谢。
    【解决方案3】:

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

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

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

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

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

    【讨论】:

      猜你喜欢
      • 2012-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      相关资源
      最近更新 更多