Ошибка 0x800F081F при установке .NET Framework 3.5 в Windows 8 /Server 2012

Не секрет, что в 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:

Error: 0x800F0906

Windows couldn’t connect to the Internet to download necessary files. Make sure that you’re connected to the Internet and click «Retry» to try again.

Ошибка установки 0x800F0906 .net frawework 3.5 в Windows 8.1

Примечание. Каких либо проблем с доступом в Интернет на проблемных машинах не было.

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

dism /online /enable-feature /featurename:NetFX3 /All /Source:e:\sources\sxs /LimitAccess

Выполнение команды DISM завершается с ошибкой 0x800F081F:

Deployment Image Servicing and Management tool Version: 6.2.9200.16384
Image Version: 6.2.9200.16384
Enabling feature(s) [===========================66.5%====== ]

Error: 0x800f081f
The source files could not be found.
Use the «Source» option to specify the location of the files that are required to restore the feature. For more informat
ion on specifying a source location, see http://go.microsoft.com/fwlink/?LinkId=243077.
The DISM log file can be found at 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: Security update for the .NET Framework 3.5 on Windows 8.1 and Windows Server 2012 R2: August 12, 2014
  • KB2966827 — MS14-046: Security update for the .NET Framework 3.5 on Windows 8 and Windows Server 2012: August 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.


Предыдущая статья Следующая статья


Комментариев: 10 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)