我使用的Visual Studio 2012和HP Fortify的4.21与最新的规则包。
代码(C#)生活有HP Fortify的同一台机器上,我只能用AWB没有SCC。 代码成功生成当开发者构建,但是当我试图用Fortify的扫描我得到一个错误。
ASP预编译错误
这个错误发生我是否从VS或命令行启动。 该日志显示任何错误或警告,但在那个没有什么可存储最终声明,所以从未创建过FPR文件。 如果我运行从审计工作台扫描崩溃只是说,它不能创建构建标识。
我没有找到一个建议(下)来解决ASP问题,但它失败并不会创建FPR文件能够运行的最后一行(做扫描)。
我明白任何帮助!
第1步:清洁sourceanalyzer -b “构建ID” -clean
步骤2:翻译/建造sourceanalyzer -b “生成ID” -Xmx1280M -Xss8M -debug -logfile trans.log devenv的 “Sample.sln”/重建调试
第3步:分析sourceanalyzer -b “构建ID” -Xmx1280M -Xss8M -debug -logfile scan.log型扫描-f Results.fpr
我也陷入了这个问题,这把我的问题的关心。
第1步:点击“生成”选项卡步骤2:单击“清理解决方案”第3步。最有可能的两个文件夹出现在Solution Explorer(bin和OBJ)。 右键点击每一个并删除它,不要紧,你在做什么样的顺序吧。第4步点击“生成”选项卡第5步:单击“重新生成解决方案”第6步:再次尝试运行设防
额外的步骤步骤7.如果仍然不工作检查你的web.config中的错误。 该项目将建立与错误,但会导致预编译失败,Fortify的。
第8步:尝试分配更多的内存通过将HP Fortify的设防 - >选项 - >项目设置 - >内存(MB) - > 1024(或更高版本)。
我碰到类似的问题。 试用另一台机器上。 有时,这使得它的工作。 当它没有它已经由于Fortify的错误。 与Fortify的支持工作,帮助我跟踪这个问题了。 HP文件上存在一个bug,虽然我不相信它帮助。 这就是说,一旦我知道什么是构建在文件引起的故障我已经能够修改文件让Fortify的完成。
对不起,我没有更多的帮助。
问题是,有一个或多个您的ASPX文件。 对于DOTNET Web表单的ASPX页面不是由Visual Studio编译的,它们在服务器上动态编译。 为了Fortify的扫描代码,它调用ASPNET_compiler编译您的ASPX文件。 从命令行传递-debug,然后看看在日志中的以ASPNET_compiler通话。 您可以复制这些参数,然后运行它们在Visual Studio命令提示符下找到导致该问题的ASPX文件。 请记住,通过ASPNET_compiler一个目录来编译时,当它发现第一个错误死亡。 您可能需要运行几次找到所有的错误。
检查AWB分析信息标签的相关扫描错误。 另外看看在相关表项扫描日志文件,有作为。
出现重新如果埃里克是正确的,你可以把它放到sourceanalyzer到构建脚本的情况下的问题。
第1步 - 点击“生成”选项卡第2步 - 点击“清理解决方案”第3步 - 2文件夹出现在解决方案资源管理(BIN,OBJ)。 右键点击
各1名,删除它,没关系秩序。第4步,点击“生成”选项卡第5步点击“重建解决方案”第6步试运行再次巩固
额外的步骤步骤7 - ˚F仍然不工作检查的web.config错误。 项目生成错误导致预编译失败巩固。
第8步 - 尝试分配更多的内存巩固打算马力强化 - >选项 - >项目设置 - >内存(MB) - > 1024(或更高版本)。
下面的链接有助于解决我的问题。 http://nayviocde12.blogspot.be/2012/08/aspnet-hp-fortify-scans-get-asp-pre.html
Fortify的SCA版16.20及后
与Fortify的SCA版本16.20开始,ASP.Net代码不再使用微软aspnet_compiler.exe
所以不会再出现这个特殊问题。
Fortify的SCA版本16.20之前
我首选的调试预编译的问题的方法是将这个命令添加到Visual Studio中的Web项目的生成后事件,这样的错误在错误列表中显示。
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_compiler.exe" -v / -p $(ProjectDir)
另一件事要记住,如果你有没有解决方案的一部分,但在Web项目目录中的文件,将aspnet_compiler仍然会阅读。
我发现这种情况时常见的开发人员会从Visual Studio中排除的文件。 这不会删除它们。 或者,如果他们将其删除,然后通过Visual Studio界面,但不是从底层源代码库中删除,他们刚上车结账再次下载。
一个简单的方法来检查,这将是在Visual Studio解决方案资源管理器窗口打开显示所有文件。