Как проверить совместимость моей программы и версий .NET Framework? - PullRequest
6 голосов
/ 26 апреля 2010

Я пишу программу, предназначенную для запуска на .net framework 2.0.

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

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

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

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

спасибо

Ответы [ 3 ]

4 голосов
/ 26 апреля 2010
0 голосов
/ 26 апреля 2010

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

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

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

0 голосов
/ 26 апреля 2010

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

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

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

...