Как проверить, имеет ли мое решение неуправляемый код?

2

У нас есть несколько человек, которые работают над проектом. Есть ли какой-нибудь инструмент, который сканирует и проверяет все мое решение, если у него есть неуправляемый код или не-типичный код?

Цель состоит в том, чтобы разместить все решение с полностью управляемым кодом, найти лазейки и исправить их как безопасный и управляемый код.

Каковы общие лазейки, которые мне нужно будет рассмотреть и иметь дело?

Спасибо.

Теги:
unmanaged
managed-code

4 ответа

1

Чтобы обнаружить неуправляемый код, просто запретите небезопасный код в каждом проекте и посмотрите, какие компиляции.

В управляемом коде все безопасно по типу (поскольку компилятор не позволит вам совершить какое-либо небезопасное кастинг), то, что вы ищете, скорее "слабое печатание". Вы можете начать с поиска классов в пространстве имен System.Collection, таких как ArrayList и HashTable. Их больше не следует использовать, поскольку в пространстве имен System.Collection.Generic есть строго типизированные замены.

(Я использую кавычки вокруг слабого набора текста в этом случае, так как существует много разных определений этого термина, и мы только ищем некоторые его аспекты.)

1

PE Verify - полезный инструмент для проверки безопасности типов. Он не помещает неуправляемый код как таковой. Более подробную информацию можно найти на http://msdn.microsoft.com/en-us/library/62bwd2yd(VS.80).aspx

  • 0
    PEVerify полезен после компиляции, мне нужно сделать это перед компиляцией в самой Visual Studio.
  • 0
    Я не уверен, есть ли инструмент, который может обнаружить эту компиляцию «до». Возможно, вам придется написать собственный инструмент на основе регулярных выражений, который затем интегрируется в вашу среду IDE, чтобы проверить это. Но если вы не возражаете против компиляции, то почему бы не избавиться от опции / unsafe compiler и заставить компилятор бросать ошибка. Все, что вам нужно сделать сейчас, это исправить ошибки компилятора.
0

http://www.c-sharpcorner.com/UploadFile/questpond/311072008102315AM/3.aspx

Решает ли это то, что вы ищете?

  • 0
    StyleCop, FXCop для руководящих принципов кодирования, они отличаются от того, что мне нужно.
0

Возможно, MoMA - это то, что вам нужно. Это должно дать вам несколько советов.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню