热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何整合FxCop和VS2008?-HowtointegrateFxCopandVS2008?

Ifthisisduplicatedquestion,pleasepointmetotheproperlinkandIlldeletethisquestion.如果

If this is duplicated question, please point me to the proper link and I'll delete this question.

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

I know that in VS Team System I can use Code Analysis but I'm using VS Professional.

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

Can you tell me how I can integrate FxCop and Visual Studio? I don't want to add FxCopCmd.exe to my Post-build events to run FxCop with every compilation. I want to be able to run FxCop when I choose by right clicking on the project in Solution Explorer.

你能告诉我如何整合FxCop和Visual Studio吗?我不想将FxCopCmd.exe添加到我的Post-build事件中以便在每次编译时运行FxCop。我想通过右键单击解决方案资源管理器中的项目来选择运行FxCop。

Thanks for your help.

谢谢你的帮助。

3 个解决方案

#1


It took awhile by I finally figure it out. It's not ideal but it works.

花了一段时间我终于明白了。这不是理想的但是有效。

Update: I create a post with step by step instructions:

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

Thanks to aamit, who provided the link that put me on the right track even that solution in MSDN article doesn't work. Give him +1; he deserves it.

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

1.) In FxCop GUI save your project.

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

IMPORTANT:

  • a. Save project in the same directory where your solution is.
  • 一个。将项目保存在解决方案所在的同一目录中。

  • b. Give the FxCop project name the same as your solution name and include the .sln extension.
  • 湾为FxCop项目名称提供与解决方案名称相同的名称,并包含.sln扩展名。

For example: If your solution name is MySolution.sln, the FxCop project name is going to be MySolution.sln.FxCop.

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

2.) In Visual Studio select Tools -> External Toos

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

3.) Enter following information in External Tools dialog box:

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

  • Title: FxCop
  • Command: C:\Program Files\Microsoft FxCop 1.36\FxCopCmd.exe
  • 命令:C:\ Program Files \ Microsoft FxCop 1.36 \ FxCopCmd.exe

  • Arguments: /c /p:"$(SolutionDir)\$(SolutionFileName).fxcop" /cXsl:"C:\Program Files\Microsoft FxCop 1.36\Xml\VSConsoleOutput.xsl"
  • 参数:/ c /p:"$(SolutionDir)\$(SolutionFileName).fxcop“/ cXsl:”C:\ Program Files \ Microsoft FxCop 1.36 \ Xml \ VSConsoleOutput.xsl“

  • Initial directory: C:\Program Files\Microsoft FxCop 1.36
  • 初始目录:C:\ Program Files \ Microsoft FxCop 1.36

Make sure that "Use Output window" checkbox is checked.

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

That's it. It works for me I hope it's going to work for you.

而已。它对我有用,我希望它对你有用。

#2


How about setting up FxCop as an external tool in Visual Studio? Here's the link:

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

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

#3


I run a command very similar Vadim's as a Post-Build event for the project. That way, I get the FxCop errors as soon as I recompile. But our commands are pretty much the same; nice to know at least two people in the world reached the same conclusion!

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

The errors do show up in Visual Studo's Error List pane.

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

"%ProgramFiles%\Microsoft FxCop 1.36\FxCopCmd.exe"
/file:"$(TargetPath)" 
/console
/dictionary:"$(SolutionDir)Res\FxCop\CustomDictionary.xml"
/searchgac 
/ignoregeneratedcode

(You can omit the /dictionary argument; it just points to one of my custom dictionary files since FxCop flags a few variable names as Hungarian notation when they aren't. I also line-wrapped the command for readability.)

(您可以省略/ dictionary参数;它只指向我的一个自定义词典文件,因为FxCop将一些变量名称标记为匈牙利表示法,而不是。我还将命令行换行以便于阅读。)

It does make the build a little longer, but it's nice to see the errors right away and to tailor the command settings per project. Good luck!

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


推荐阅读
  • Python脚本编写创建输出数据库并添加模型和场数据的方法
    本文介绍了使用Python脚本编写创建输出数据库并添加模型数据和场数据的方法。首先导入相应模块,然后创建输出数据库并添加材料属性、截面、部件实例、分析步和帧、节点和单元等对象。接着向输出数据库中添加场数据和历程数据,本例中只添加了节点位移。最后保存数据库文件并关闭文件。文章还提供了部分代码和Abaqus操作步骤。另外,作者还建立了关于Abaqus的学习交流群,欢迎加入并提问。 ... [详细]
  • 本文介绍了在go语言中利用(*interface{})(nil)传递参数类型的原理及应用。通过分析Martini框架中的injector类型的声明,解释了values映射表的作用以及parent Injector的含义。同时,讨论了该技术在实际开发中的应用场景。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • Go GUIlxn/walk 学习3.菜单栏和工具栏的具体实现
    本文介绍了使用Go语言的GUI库lxn/walk实现菜单栏和工具栏的具体方法,包括消息窗口的产生、文件放置动作响应和提示框的应用。部分代码来自上一篇博客和lxn/walk官方示例。文章提供了学习GUI开发的实际案例和代码示例。 ... [详细]
  • 本文介绍了Codeforces Round #321 (Div. 2)比赛中的问题Kefa and Dishes,通过状压和spfa算法解决了这个问题。给定一个有向图,求在不超过m步的情况下,能获得的最大权值和。点不能重复走。文章详细介绍了问题的题意、解题思路和代码实现。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • 深入理解Java虚拟机的并发编程与性能优化
    本文主要介绍了Java内存模型与线程的相关概念,探讨了并发编程在服务端应用中的重要性。同时,介绍了Java语言和虚拟机提供的工具,帮助开发人员处理并发方面的问题,提高程序的并发能力和性能优化。文章指出,充分利用计算机处理器的能力和协调线程之间的并发操作是提高服务端程序性能的关键。 ... [详细]
author-avatar
美晶婚纱-璐璐_723
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有