Иногда случаются ситуации, когда пользователю Windows 8 необходимо установить .NET Framework 3.5 — чаще всего, это необходимо для обеспечения работоспособности некоторых, относительно старых, программ. В большинстве случаев все проходит без проблем. Однако, недавно возникла ситуация — данный фреймворк отказался устанавливаться на компьютер, находящийся в доменной сети AD с настроенным локальным сервером обновлений WSUS.
В обычном случае, установка вышеупомянутого фреймворка осуществляется силами ОС и, по сути, представляет из себя лишь включение компонента, отключенного по умолчанию.
После чего ОС подключается к серверу обновлений, скачивает необходимые файлы, и устанавливает компонент.
В ряде случаев ОС не может скачать нужные файлы, а именно:
Я столкнулся, как раз, со вторым случаем. Причем, Microsoft в этом случае советует отключить использование локального сервера обновлений WSUS, установить .NET Framework 3.5, после чего опять включить использование локального WSUS. В моем случае этот вариант был малоприемлем, так как для этого нужно было либо вывести ПК из домена, либо изменить групповую политику. Сконфигурировать WSUS должным образом мне не удалось, он скачивает обновления к .NET Framework 3.5 и версиям ниже, однако установка через него все равно не проходит.
Решением проблемы является установка вышеобозначенного компонента из локальных источников. Для начала необходимо определиться с локальным хранилищем пакетов. Вообще-то, оно находится на установочном диске Windows 8, в директории \sources\sxs, но, во-первых, не всегда под рукой есть диск (или iso), во-вторых, установка с первого же попавшегося диска почему-то не прошла, но прошла с другого. Чтобы избежать этих проблем, я подготовил архив со всеми необходимыми файлами. Итак приступим.
Это займет несколько минут, но в результате получаем успешный результат!
Этот способ можно также применять для установки .NET Framework 3.5 на компьютеры, ограниченные в подключении к интернету.
Update от 01.02.2019
Спустя годы ситуация изменилась, подробное обсуждение доступно на форуме Microsoft.
Теперь никаких локальных установок не нужно. Достаточно поставить одну галочку в GPO.
Или по-русски:
Галка
Описание проблемы
В обычном случае, установка вышеупомянутого фреймворка осуществляется силами ОС и, по сути, представляет из себя лишь включение компонента, отключенного по умолчанию.
После чего ОС подключается к серверу обновлений, скачивает необходимые файлы, и устанавливает компонент.
В ряде случаев ОС не может скачать нужные файлы, а именно:
- Отсутствует подключение к интернету;
- На сервере обновлений отсутствуют необходимые файлы.
Я столкнулся, как раз, со вторым случаем. Причем, Microsoft в этом случае советует отключить использование локального сервера обновлений WSUS, установить .NET Framework 3.5, после чего опять включить использование локального WSUS. В моем случае этот вариант был малоприемлем, так как для этого нужно было либо вывести ПК из домена, либо изменить групповую политику. Сконфигурировать WSUS должным образом мне не удалось, он скачивает обновления к .NET Framework 3.5 и версиям ниже, однако установка через него все равно не проходит.
Решение проблемы
Решением проблемы является установка вышеобозначенного компонента из локальных источников. Для начала необходимо определиться с локальным хранилищем пакетов. Вообще-то, оно находится на установочном диске Windows 8, в директории \sources\sxs, но, во-первых, не всегда под рукой есть диск (или iso), во-вторых, установка с первого же попавшегося диска почему-то не прошла, но прошла с другого. Чтобы избежать этих проблем, я подготовил архив со всеми необходимыми файлами. Итак приступим.
- Скачиваем архив с файлами, необходимыми для установки компонента: Sources.zip (102.5 MB)
- Распаковываем архив, для наглядности я распаковал его в корень диска C:\
- Запускаем командную строку с правами администратора
- Выполняем код, с учетом пути к распакованным файлам из архива:
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:C:\Sources\sxs
Это займет несколько минут, но в результате получаем успешный результат!
Этот способ можно также применять для установки .NET Framework 3.5 на компьютеры, ограниченные в подключении к интернету.
Update от 01.02.2019
Спустя годы ситуация изменилась, подробное обсуждение доступно на форуме Microsoft.
Теперь никаких локальных установок не нужно. Достаточно поставить одну галочку в GPO.
Computer Configuration > Administrative Templates > System, "Specify settings for optional component installation and component repair"
Или по-русски:
Конфигурация компьютера - Политики - Административные шаблоны - Система - Укажите параметры для установки необязательных компонентов и восстановления компонентов.
Галка
"Скачайте содержимое для восстановления и дополнительные компоненты непосредственно из Центра обновлений Windows..."