Как проверить совместимость моей программы и версий.NET Framework?

Я пишу программу, которая предназначена для работы на.net Framework 2.0.

Я выбрал 2.0 в моем проекте VS.

Он отлично работает на моей машине (у меня 2.0 SP2), поэтому нет ошибки компиляции. но когда я попытался запустить его на другой машине (только с 2.0, без sp), он не может работать. Я знаю, что я использовал какой-то метод, который поддерживается 2.0, но только с 2.0 SP2.

.net Framework 2.0 с пакетом обновления 2 (SP2), по-видимому, отсутствует в VS IDE, поэтому VS не может дать мне никакого предупреждения, когда я скомпилировал его на своей машине.

Как я могу легко проверить совместимость моих кодов с.net framework 2.0 SP2? или я просто должен посмотреть на msdn, чтобы проверить все методы, которые я использовал???

Спасибо

3 ответа

Решение

Вы можете определить, где в вашем коде ошибка, когда нет sp.

Затем вы просто создаете фиктивный фрагмент, который использует эту структуру, и перехватываете исключение.

Если не обнаружено никаких исключений, вы в порядке. Если выдается исключение, вы, вероятно, пропустите sp2.

Если вы точно знаете, какие именно библиотеки (dll) отличают 2.0 SP2 от 2.0, вы можете попытаться найти и загрузить их программным способом. В случае сбоя SP2 отсутствует.

В случае, если нет "новых" dll, вы можете использовать отражение, чтобы проверить, есть ли у класса определенный метод. Если это так, у вас есть SP2.

Это решение для времени выполнения, поэтому вы можете отобразить дружественное сообщение для пользователя.

Другие вопросы по тегам