Я пытаюсь запустить Fortify для проекта Visual Studio 2008. Проект строится успешно самостоятельно. Когда я пытаюсь проанализировать проект с помощью Fortify, используя интегрированные элементы управления Visual Studio, проект компилируется успешно, но выдается сообщение об ошибке. Вот вывод из консоли Fortify:
Fortify SCA...
Running: "-show-runtime-properties"
Running: "-b" "ProjectName" "-clean"
Error setting VCProject Path. Abort VC project related scan
Scan Failed Could not load file or assembly 'Microsoft.VisualStudio.VCProjectEngine, Version=8.0.0.0, Culture=neutral, PublicKeyToken=<string here>' or one of its dependencies. The system cannot find the file specified.
at FortifyBase.Scanner.CPPScanUtil.ResetVCProjectExecutableDirectories()
at FortifyCommon.Scanner.BuildListeners.VSBuildDone(vsBuildScope scope, vsBuildAction action)
Scan Failed:
Could not load file or assembly 'Microsoft.VisualStudio.VCProjectEngine, Version=8.0.0.0, Culture=neutral, PublicKeyToken=<string here>' or one of its dependencies. The system cannot find the file specified.
Когда я запускаю Fortify из автономного Audit Workbench, я получаю следующее сообщение об ошибке:
SCA Commandline invocation failed
[error]: Build ID "ProjectName" doesn't exist.
Я сохраняю большинство параметров сканирования по умолчанию, за исключением изменения «Это веб-приложение J2EE» на «Нет» (я также пытался оставить это «да», но это тоже не сработало.
Поиск любой информации в сообщениях об ошибках вызвал только другой вопрос о переполнении стека, но настройка проекта, похоже, сильно отличается от моего проекта Visual Studio. В любом случае я также попытался запустить сканирование из командной строки с аргументами, предоставленными Visual Studio, но получаю то же сообщение об ошибке.
В документации Fortify упоминается, что идентификатор сборки используется для отслеживания того, какие файлы компилируются и связываются как часть сборки, а затем для сканирования этих файлов, и что обычно это имя проекта. Я попробовал несколько разных строк в качестве идентификатора сборки, но, похоже, ничего не работает.
Кто-нибудь знает, где я иду не так? Заранее спасибо.
Обновление : проблема возникает на этапе преобразования анализа, из-за которого идентификатор сборки не создается вообще. Вот журнал из журнала sourceanalyzer:
[2010-08-23 21:20:53 INFO]
Fortify Source Code Analyzer 5.1.0.0061
[2010-08-23 21:20:53 INFO]
Args:
["-b", "ProjectName", "-machine-output", "-vsversion", "8.0", "C:\\Program Files (x86)\\Microsoft Visual Studio 9.0\\Common7\\IDE\\devenv.exe", "ProjectName.sln", "/rebuild", "DEBUG"]
[2010-08-23 21:20:53 INFO]
VM Args:
"-XX:SoftRefLRUPolicyMSPerMB=100 -Xss1M -Xmx600M -Xms16M"
[2010-08-23 21:21:04 INFO 1102]
Compiler execution failed (exit code: 1).
[2010-08-23 21:21:04 WARNING]
exit(1)