使用Visual Studio 2008进行Prefast扫描

7
有没有办法在Visual Studio 2008 Professional中启用Prefast?我正在尝试编译本地C++代码。我已经尝试了以下几个步骤:下载Windows SDK,将编译器的Bin/Include/Lib路径设置为SDK,为C/C++编译添加附加选项(/Analyze:WX-)。我相信这些步骤应该已经设置了适当的编译器来使用prefast进行静态分析。这个设置实际上在Visual Studio 2005中有效。但是,在Visual Studio 2008中不起作用。它总是给出两个问题:1. LINK:警告LNK4044:无法识别的选项'/MANIFESTUAC:level='asInvoker' uiAccess='false'';被忽略。2. 致命错误LNK1103:调试信息损坏;重新编译模块。我相信第一个问题的原因是Windows SDK不能识别/MANIFESTUAC选项。这是在Visual Studio 2008中引入的。至于第二个问题,我不知道。有任何想法/建议/指针都非常欢迎。
3个回答

2

VS 2008内置了代码分析工具(FxCop和PREfast)。您可以在 项目-属性-配置属性-C/C++-高级-启用生成时的C/C++代码分析 中开启它。

然后,您可以尝试编译一些PREfast示例并查看警告。

祝好运!

编辑:专业版没有此选项:(


2
VS2008的“专业版”没有这个选项。 - Benjamin
你是正确的,那么你需要安装SDK,将VS切换到SDK编译器,并使用/analyze选项。 - Sergey Podobry
所以,我已经安装了软件开发工具包(SDK)。如何将VS切换到SDK编译器? - Andrew Bainbridge

1
你不需要单独使用Prefast。可以通过使用/analyze编译器开关来访问Visual C++ Prefast。

0

代码分析适用于 VS C++ Express,但对于 Visual Studio...我找不到它...VS C++ Express 和 VS 有一些区别。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接