5

Wczoraj wysłałem pytanie tutaj (FxCop and Code Analysis Rules) o tym, jak FxCop uruchamiał te same reguły co analiza kodu i myślałem, że został rozwiązany.Jak uzyskać FxCop mają ten sam zestaw reguł, co w przypadku analizy kodu programu Visual Studio?

Wygląda jednak na to, że nie ma sposobu, aby FxCop uruchomił ten sam dokładny zestaw reguł, co analiza kodu Visual Studio 2010. Na przykład, gdy wszystko zaczęło działać z moją konfiguracją FxCopCmd, zaczęło szczekać na temat reguł oznaczonych w zestawie reguł Minimum Recommended Rules, takim jak CA2000. Jeśli usunę reguły, to nie podoba mi się, że uruchamia analizę i wszystko wygląda dobrze. . . z wyjątkiem tego, że naprawdę nie działa ten sam zestaw reguł!

Wydaje mi się to szalone! Czy mimo to FxCop analizuje dokładnie ten sam zestaw reguł, które mogą być analizowane przez analizę kodu Visual Studio? Czy istnieje .dll, aby dodać reguły do ​​analizy, aby uzyskać reguły takie jak CA2000 i inne?

Odpowiedz

3

Analiza kodu VS zawiera pewne reguły, które nie są zawarte w autonomicznym FxCop. Musisz upewnić się, że dodatkowe zestawy reguł są dostępne dla pliku fxcopcmd.exe. Najłatwiejszym sposobem na to jest zastąpienie zawartości foldera FxCop ze źródłami kompilacji zawartością pochodzącą z instalacji Visual Studio, ponieważ jeden z zestawów reguł (DataflowRules.dll) używa mechanizmu analizy, który nie jest dołączony do autonomicznego FxCop albo to zależy od wielu innych złożeń, które są również zawarte w folderze FxCop w hierarchii folderów instalacyjnych VS.

+0

Tak właśnie myślałem, ale kiedy przełączyłem się z wywoływania FxCop z "C: \ Program Files (x86) \ Microsoft Fxcop 10.0 \ FxCopCmd.exe" na "C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Narzędzia zespołu \ Narzędzia analizy statystycznej \ FxCop \ FxCopCmd.exe "nadal dławi dodatkowe zasady. Czuję, że to powinno załatwić sprawę, prawda? – Chris

+0

Znalazłem mój problem, mój plik projektu FxCop nie odwoływał się do wszystkich bibliotek dll reguł. Dodałem referencje dll w i wszystko działało zgodnie z oczekiwaniami. – Chris

Powiązane problemy