Как интегрировать FxCop и VS 2008? - PullRequest
14 голосов
/ 09 мая 2009

Если это дублированный вопрос, укажите мне соответствующую ссылку, и я удалю этот вопрос.

Я знаю, что в VS Team System я могу использовать анализ кода, но я использую VS Professional.

Подскажите, как я могу интегрировать FxCop и Visual Studio? Я не хочу добавлять FxCopCmd.exe в мои события после сборки, чтобы запускать FxCop при каждой компиляции. Я хочу иметь возможность запускать FxCop при выборе, щелкнув правой кнопкой мыши проект в обозревателе решений.

Спасибо за вашу помощь.

Ответы [ 3 ]

24 голосов
/ 09 мая 2009

Прошло немного времени, и я наконец понял это. Это не идеально, но работает.

Обновление: Я создаю сообщение с пошаговыми инструкциями :

Спасибо aamit , который предоставил ссылку, которая поставила меня на правильный путь, даже если это решение в статье MSDN не работает. Дать ему +1; он этого заслуживает.

1.) В графическом интерфейсе FxCop сохраните ваш проект.

ВАЖНО :

  • а. Сохранить проект в том же каталоге где ваше решение.
  • б. Дайте имя проекту FxCop так же, как имя вашего решения и включите расширение .sln.

Например: если имя вашего решения MySolution.sln, имя проекта FxCop будет MySolution.sln.FxCop.

2.) В Visual Studio выберите Инструменты -> Внешние настройки

3.) Введите следующую информацию в диалоговом окне Внешние инструменты:

  • Название: FxCop
  • Команда: C: \ Program Files \ Microsoft FxCop 1.36 \ FxCopCmd.exe
  • Аргументы: / c /p:"$(SolutionDir)\$(SolutionFileName).fxcop» / cXsl: "C: \ Program Files \ Microsoft FxCop 1.36 \ Xml \ VSConsoleOutput.xsl "
  • Исходный каталог: C: \ Program Файлы \ Microsoft FxCop 1.36

Убедитесь, что установлен флажок «Использовать окно вывода» .

Вот и все. Это работает для меня, я надеюсь, что это будет работать для вас.

16 голосов
/ 09 мая 2009

Как насчет настройки FxCop как внешнего инструмента в Visual Studio? Вот ссылка:

http://msdn.microsoft.com/en-us/library/bb429389(VS.80).aspx

4 голосов
/ 09 мая 2009

Я запускаю команду, очень похожую на Vadim, как событие Post-Build для проекта. Таким образом, я получаю ошибки FxCop, как только перекомпилирую. Но наши команды почти одинаковы; приятно знать, что как минимум два человека в мире пришли к такому же выводу!

Ошибки отображаются в области списка ошибок Visual Studo.

"%ProgramFiles%\Microsoft FxCop 1.36\FxCopCmd.exe"
/file:"$(TargetPath)" 
/console
/dictionary:"$(SolutionDir)Res\FxCop\CustomDictionary.xml"
/searchgac 
/ignoregeneratedcode

(Вы можете опустить аргумент / dictionary; он просто указывает на один из моих пользовательских файлов словарей, поскольку FxCop помечает несколько имен переменных как венгерские обозначения, когда их нет. Я также переносил команду для удобства чтения). 1006 *

Это действительно делает сборку немного длиннее, но приятно сразу увидеть ошибки и настроить параметры команды для проекта. Удачи!

...