Не секрет, що в Windows 8 / Windows Server 2012 / R2 .Net Framework 3.5 не йде в комплекті поставки ОС (в рамках концепції Features on Demand), і для його установки вимагає дистрибутив ОС або прямий доступ до сайту оновлень Microsoft. В одній з попередніх статей ми вже показували, як встановити .NET Framework 3.5 в Windows Server 2012 R2 / Windows 8. Днями відразу на декількох системах зіткнулися з помилкою установки .Net Framework 3.5. Проблема спостерігалася при установці компонента як на серверної Windows Server 2012, так і на клієнтської Windows 8.1.

Що найцікавіше, перемогти проблему вийшло різними методами:).

Неможливо встановити .NET Framework 3.5 в Windows 8 / Windows Server 2012

При онлайн установці .NET Framework 3.5 в Windows 8 через Панель управління (Control Panel -> Programs and Features -> Turn Windows features on or off) з’являється помилка 0x800F0906:

Помилка: 0x800F0906

Windows не змогла підключитися до Інтернету для завантаження необхідних файлів. Переконайтеся, що ви підключені до Інтернету, і натисніть «Повторити», щоб спробувати ще раз.

Помилка установки 0x800F0906 .net frawework 3.5 в Windows 8.1

Примітка. Яких-небудь проблем з доступом в Інтернет на проблемних машинах не було.

При спробі офлайн установки .NET 3.5 зі змонтованого диска з дистрибутивом ОС (використовувався саме той інсталяційний диск, з якого розгорталася система) командою:

dism /online /enable-feature /featurename:NetFX3 /All /Source:e:sourcessxs /LimitAccess

Виконання команди DISM завершується з помилкою 0x800F081F:

Інструмент обслуговування та управління розгортанням зображень Версія: 6.2.9200.16384
Версія зображення: 6.2.9200.16384
Увімкнення функцій [===========================66.5%====== ]

Помилка: 0x800f081f
Не вдалося знайти вихідні файли.
Використовуйте опцію «Джерело», щоб вказати розташування файлів, необхідних для відновлення функції. Для отримання додаткової інформації
про те, як вказати місце розташування джерела, див. http://go.microsoft.com/fwlink/?LinkId=243077.
Файл журналу DISM можна знайти за адресою C: Windows Logs DISM dism.log

Помилка 0x800f081f установки .NET 3.5 за допомогою DISM

У локалізованої версії Windows 8 помилка, відповідно:

включення функцій
[===========================66.5%====== ]
Помилка: 0x800f081f
Не вдалося знайти вихідні файли.

Лог C: Windows Logs DISM dism.log містить такі помилки:

2014-10-24 10:11:22, Info                  DISM   DISM Package Manager: PID=776 TID=4024  Error in operation: source for package or file not found, ResolveSource() unsuccessful. (CBS HRESULT=0x800f081f) - CCbsConUIHandler::Error
2014-10-24 10:11:22, Error                 DISM   DISM Package Manager: PID=776 TID=2856 Failed finalizing changes. - CDISMPackageManager::Internal_Finalize(hr:0x800f081f)
2014-10-24 10:11:22, Error                 DISM   DISM Package Manager: PID=776 TID=2856 The source files could not be found; their location must be specified using the /source option to restore the feature. - GetCbsErrorMsg
2014-10-24 10:11:22, Error                 DISM   DISM Package Manager: PID=776 TID=2856 Failed processing package changes with session options - CDISMPackageManager::ProcessChangesWithOptions(hr:0x800f081f)
2014-10-24 10:11:22, Error                 DISM   DISM Package Manager: PID=776 TID=2856 Failed ProcessChanges. - CPackageManagerCLIHandler::Private_ProcessFeatureChange(hr:0x800f081f)
2014-10-24 10:11:23, Error                 DISM   DISM Package Manager: PID=776 TID=2856 Failed while processing command enable-feature. - CPackageManagerCLIHandler::ExecuteCmdLine(hr:0x800f081f)

Некоректні поновлення, що перешкоджають установці .NET 3.5

В одній зі свіжої статей бази знань Microsoft http://support2.microsoft.com/kb/3005628 описується проблема з серпневими оновленнями безпеки Windows, установка яких призводить до ситуації, коли неможливо встановити компонент .NET Framework 3.5. Йдеться про двох оновленнях:

  • KB2966828 – MS14-046: Оновлення безпеки для .NET Framework 3.5 у Windows 8.1 та Windows Server 2012 R2: 12 серпня 2014 р.
  • KB2966827 – MS14-046: Оновлення безпеки для .NET Framework 3.5 у Windows 8 та Windows Server 2012: 12 серпня 2014 р

Як ми бачимо з описів, зазначені оновлення безпеки призначені для .NET Framework 3.5 в Windows 8.1 і Windows Server 2012 R2, причому встановлюються ці поновлення не залежно від того, чи встановлений компонент .NET Framework 3.5 в системі чи ні.

Зрозуміти чи встановлені дані поновлення в системі можна так чи за допомогою такої команди Powershell:

Get-HotFix |? {$ _. Hotfixid -like "*2966828*"}

Якщо будь-яка з цих оновлення встановлено в системі, його потрібно видалити (процедура докладно описана в статті Як правильно видалити оновлення в Windows). Після цього можна встановити .Net Framework 3.5 як зазвичай (він встановиться без помилки), а потім ще раз встановити віддалені поновлення (щоб не залишати дірку в системі).

Порада. Альтернативно на порталі Microsoft замість видалення / установки оновлень рекомендують встановити хотфиксов 3005628. Даний фікс видалить поновлення 2966827 2966828 в системах, де не установлен.NET Framework 3.5. Який спосіб зручніше – вирішувати вам.

Конфлікт Language Pack і .NET Framework 3.5

На машині з Windows 8.1, на якій також була присутня розглянута проблема, зазначені вище оновлень були відсутні. У спробах вирішити проблему перебрали безліч варіантів, починаючи від послідовного видалення всіх оновлень і закінчуючи відновленням сховища компонентів. Але ефекту так і не досягли …

Як не дивно, допомогло вилучення додаткового (російського) мовного пакета (команда lpksetup). lpksetup- установка / видалення мовного пакета в Windows 8 / Server 2012

Після видалення мовного пакета, .NET Framework встановлюється коректно. Потім можна заново встановити потрібний Language Pack.

Leave a Reply

Your email address will not be published. Required fields are marked *