Выборочное отключение версий .NET Framework

#.net

#.net

Вопрос:

Возможно ли временно и выборочно отключить одну или несколько версий .NET Framework, установленных на компьютере, без фактического удаления каждой из них? Необходимо проверить влияние на программы, когда определенные версии фреймворка недоступны.

Ответ №1:

Это в значительной степени громкое «НЕТ». Версии .NET перезаписывают друг друга. Игнорируя старые версии .NET 1.x, вы можете иметь только две разные версии .NET на компьютере. Либо одна из более старых версий, охватываемых версией CLR 2.0.50727 (2.0, 3.0, 3.5, 3. 5SP1) и один, на который распространяется версия CLR 4.0.30319 (4.0, 4.01, 4.02, 4.03, 4.5, 4.5.1, 4.5.2, 4.6).

Вы не можете надежно вернуться к более старой версии в ветке CLR, не нанеся значительного ущерба машине. Вам придется удалить текущую версию, прежде чем вы сможете начать установку той, которую хотите протестировать. Это, конечно, рискует дестабилизировать существующие программы на компьютере, ярким примером чего является Visual Studio. И это может быть активно заблокировано; например, компьютер с Windows 8 не позволит вам удалить 4.5 и не позволит устанавливать что-либо старше 3.5SP1.

Для проверки этого необходимо использовать отдельную машину или виртуальную машину, которая загружает более старую версию Windows. Комбинация версий Windows и .NET неприятно велика. Поэтому укажите в своих системных требованиях только то, что вы готовы поддерживать.

Ответ №2:

Насколько я знаю, это невозможно. Мы делали аналогичные вещи, используя виртуальные машины с разными моментальными снимками с версиями .NET Framework, которые мы хотим проверить.

Вы можете автоматизировать компьютеры VMware с помощью SDK, чтобы сделать весь процесс автоматическим.