使用批处理文件执行 Fortify 命令

问题描述 投票:0回答:1

我正在尝试通过批处理文件运行 Fortify 命令。通常,在运行强化扫描时,我通过命令行使用这三个不同的命令:

sourceanalyzer -b buildId-clean

sourceanalyzer -b buildId devenv "mysolution.sln" /Rebuild Debug 

sourceanalyzer -b buildId -scan -f "mysolution.fpr" -format fpr

现在运行第二个命令时,您需要 devenv 来完成翻译。调用此方法的最佳方法是什么?我尝试在运行批处理文件中的命令之前运行

VsDevCmd.bat
,但最终得到以下结果:

ERROR: Cannot determine the location of the VS Common Tools folder.

这甚至将

.bat
文件放在同一目录中,我称之为强化批处理文件。

我也致电 devenv.com 但收到此错误:

[错误]:适用于 Visual Studio 的 HPE Security Fortify 插件没有 执行;在此之前,没有翻译任何文件。确保 HPE Security Fortify 插件已安装。如果您正在运行 Visual Studio 2005 SP1,您还必须安装 KB934517 指示的修补程序。

这是批处理文件命令:

set SOURCEANALYZER=sourceanalyzer
set BUILDID="buildId"
set DEVCOMMAND="devenv.com"
set SOLUTIONFILE="mysolution.sln"
set ARGS="/Rebuild Debug"

%SOURCEANALYZER% -b %BUILDID% %DEVCOMMAND% %MYSOLUTION% %ARGS%

我的

VsDevCmd.bat
devenv.com
来自VS2015目录。

windows batch-file cmd fortify
1个回答
1
投票

据我了解,通过命令行运行时,

devenv
参数有三个选项:

  1. 使用
    devenv.exe
    文件的完全限定路径,通常位于
    C:\Program Files (x86)\Mircosoft Visual Studio x.0\Common7\IDE\devenv.exe
  2. 在常规命令行窗口中,在运行
    vsvars32.bat
    命令之前调用
    sourceanalyzer
    ,以将一些局部变量(例如
    devenv
    )设置为正确的路径。该文件位于
    ‪C:\Program Files (x86)\Microsoft Visual Studio x.0\Common7\Tools\vsvars32.bat
  3. 通过 Visual Studio 开发人员命令提示符运行
    sourceanalyzer
    命令。这与打开传统命令行窗口并执行
    vsvars32.bat
    相同。

如果您执行选项 2 或 3,您将能够简单地在

devenv
命令中使用变量
sourceanalyzer
,而选项 1 将需要命令中的硬路径,但如果您需要指定一个硬路径,则可能会很有用。用于构建的 Visual Studio 版本。

© www.soinside.com 2019 - 2024. All rights reserved.