Visual Studio 2010 C++项目上的Fortify-错误MSB6006:-103741701

Fortify on Visual Studio 2010 C++ project - error MSB6006: -1073741701

本文关键字:错误 Fortify- MSB6006 -103741701 Studio 2010 C++ 项目 Visual      更新时间:2023-10-16

我正试图在VS2010 C++项目上运行强化。我创建了一个非常简单的helloworld项目,并尝试使用以下命令运行强化:

sourceanalyzer.exe -b sample devenv sample.sln /REBUILD

我一直收到这个错误:

C:Program Files (x86)MSBuildMicrosoft.Cppv4.0PlatformsWin32Microsoft.Cpp.Win32.Targets(147,5): error MSB6006: "CL.exe" exited with code -1073741701.

完整的构建日志是:

Microsoft (R) Visual Studio Version 10.0.30319.1.
Copyright (C) Microsoft Corp. All rights reserved.
1>------ Rebuild All started: Project: sample, Configuration: Debug Win
32 ------
1>Build started 09/07/2012 12:13:33 PM.
1>_PrepareForClean:
1>  Deleting file "Debugsample.lastbuildstate".
1>InitializeBuildStatus:
1>  Creating "Debugsample.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>C:Program Files (x86)MSBuildMicrosoft.Cppv4.0PlatformsWin32Microsoft.Cpp.Win32.Targets(147,5): error MSB6006: "CL.exe" exited with code -1073741701.
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:00.09

我没有收到任何其他错误。我的操作系统是Windows7 64位。我的项目是一个32位控制台应用程序。我使用的是强化32位版本:"强化源代码分析器5.9.5.0007"

我试着浏览微软网页查找错误,但这显然是一个通用的错误代码。我怀疑是不相容,但无法缩小范围。你能告诉我哪里出了问题吗?


更新:更多信息:

使用VS2010的cl.exe,它可以清晰地运行。错误是由Fortify的cl.exe引发的。我检查了错误代码,显然cl.exe无法启动。我与依赖项walker进行了交叉检查,它缺少几个dll(gpsvc.dll和IEShims.dll)。我安装了64位Windows,但cl.exe是32位的,我没有这些dll的32位版本。我不确定这是否是根本原因,因为它们是延迟加载的,可能不会导致上述错误。

问题出在Fortify版本上。下载Fortify360 3.2版解决了此问题。