Ошибка 0x800F081F и 0x800F0950 при установке .NET Framework 3.5 в Windows 10 — как исправить
Иногда при установке .NET Framework 3.5 в Windows 10 появляется ошибка 0x800F081F или 0x800F0950 «Windows не удалось найти фалы, необходимые для выполнения запрошенных изменений» и «Не удалось применить изменения», причем ситуация является достаточно распространенной и не всегда легко разобраться, в чем дело.
В этой инструкции подробно о нескольких способах исправить ошибку 0x800F081F при установке компонента .NET Framework 3.5 в Windows 10, от более простых к более сложным. Сама установка описывается в отдельной статье Как установить .NET Framework 3.5 и 4.5 в Windows 10.
Прежде чем приступать, обратите внимание, что причиной ошибки, особенно 0x800F0950, может оказаться неработающий, отключенный Интернет или заблокированный доступ к серверам Майкрософт (например, если вы отключали слежку Windows 10). Также причиной иногда оказываются сторонние антивирусы и файрволлы (попробуйте временно их отключить и повторить установку).
Ручная установка .NET Framework 3.5 для исправления ошибки
Первое, что следует попробовать при ошибках во время установки .NET Framework 3.5 в Windows 10 в «Установке компонентов» — использовать командную строку для ручной установки.
Первый вариант предполагает использование внутреннего хранилища компонентов:
- Запустите командную строку от имени администратора. Для этого можно начать набирать «Командная строка» в поиске на панели задач, затем нажать правой кнопкой мыши по найденному результату и выбрать пункт «Запустить от имени администратора».
- Введите командуи нажмите Enter.
- Если всё прошло успешно, закройте командную строку и перезагрузите компьютер. .NET Framework5 будет установлен.
Если этот способ также сообщил об ошибке, попробуем использовать установку из дистрибутива системы.
Вам потребуется либо загрузить и смонтировать образ ISO с Windows 10 (обязательно в той же разрядности, что у вас установлена, для монтирования нажимаем правой кнопкой мыши по образу и выбираем «Подключить». См. Как скачать оригинальный ISO Windows 10), либо, при наличии, подключить флешку или диск с Windows 10 к компьютеру. После этого выполняем следующие шаги:
- Запустите командную строку от имени администратора.
- Введите командугде D: — буква смонтированного образа, диска или флешки с Windows 10 (на моем скриншоте буква J).
- Если команда была выполнена успешно, перезагрузите компьютер.
С большой вероятностью один из описанных выше методов поможет в решении проблемы и ошибка 0x800F081F или 0x800F0950 будет исправлена.
Исправление ошибок 0x800F081F и 0x800F0950 в редакторе реестра
Этот способ может оказаться полезным, когда установка .NET Framework 3.5 происходит на корпоративном компьютере, где для обновлений используется свой сервер.
- Нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter (Win — клавиша с эмблемой Windows). Откроется редактор реестра.
- В редактор реестра перейдите к разделуПри отсутствии такого раздела, создайте его.
- Измените значение параметра с именем UseWUServer на 0, закройте редактор реестра и перезагрузите компьютер.
- Попробуйте выполнить установку через «Включение и отключение компонентов Windows».
Если предложенный метод помог, то после установки компонента стоит изменить значение параметра на исходное (если он имел значение 1).
Дополнительная информация
Некоторые дополнительные сведения, которые могут оказаться полезными в контексте ошибок при установке .NET Framework 3.5:
Ошибка 0x800f081f. Отчего происходит и как устранить
Об ошибках операционной системы Windows наслышаны многие. Это даже стало своеобразной визитной карточкой. Происходить ошибки могут в самых разных ситуациях и их комбинациях. При этом выводится либо сообщение и код ошибки, либо просто информация о том, что она случилась. Одной из таких является неисправность под номером 0x800f081f.
Ошибка 0x800f081f. Симптомы. В каких случаях появляется
Ошибка 0x800f081f наиболее часто встречается при попытке установить компонент Windows Microsoft NET Framework 3.5. А именно, происходит сбой, и на экране появляется такое сообщение:
Сам код ошибки 0x800f081f, исходя из пояснений официальной технической поддержки, означает, что система по какой-то причине не смогла направить необходимый файл по нужному пути. Это также может случиться, когда пользователь не обладает административными правами доступа. Реже происходит из-за нарушения целостности файлов.
Наблюдается ошибка 0x800f081f в Windows 10 и 8. В более ранних версиях системы подобных проблем не возникает.
Способы устранения
На самом деле способов борьбы очень много. Первое, с чего стоит начать, это проверить операционную систему на вирусы. Воспользоваться можно многими бесплатными продуктами, которые не требуют установки. К примеру, Dr. Web CureIt.
Затем можно попробовать очистить ОС от ненужного хлама, который накапливается за период её работы. Это кэш программ, временные файлы и прочий мусор. С этим прекрасно справляется штатная утилита cleanmgr. Чтобы её запустить, достаточно найти пункт «Выполнить» в меню «Пуск» и ввести cleanmgr. Она просканирует систему и покажет, что стоит удалить, а что нет. Также можно воспользоваться бесплатной и удобной программой Ccleaner, которая не только выполняет функции cleanmgr, но и может почистить реестр и удалить установленные приложения.
Более эффективный способ
Провести процедуру по устранению ошибки 0x800f081f можно, использовав DISM. Данный продукт встроен в линейку операционных систем Windows начиная с версии Vista. Он предназначен для управления пакетами установки, системными файлами, драйверами, добавлением и отключением различных компонентов.
Для её запуска нужно обладать правами администратора. Сделать это просто. Нужно перейти через меню «Пуск» к разделу «Стандартные». В нём найти командную строку и правой кнопкой на ней выбрать «Запуск от имени администратора».
Потом нужно запустить саму утилиту с несколькими ключами:
Dism /Online /Cleanup-Image /RestoreHealth
Если процесс прошёл успешно, то нужно перезагрузить компьютер и продолжить прерванное обновление или установку Framework. Если же нет, стоит попробовать указать локальное хранилище. Для этого понадобится образ диска, с которого была установлена система, или флешка.
Все операции по вызову консоли повторяются вновь и вводятся следующие команды:
Dism /online /enable-feature:NetFx3 /All /Source:E:\sources\sxs /LimitAccess.
Точно так же после успешного её выполнения требуется перезагрузка компьютера.
Заключение
В статье приведены несколько простых способов, реализуя которые, можно исправить ошибку 0x800f081f штатными средствами Windows. Если не помогает вообще ничего, то стоит попробовать переустановить систему полностью. Но это уже совсем крайняя мера. В любом случае поддержание системы в «чистоте» обеспечит её стабильность и избавит от необходимости обращаться к мастерам или чинить самостоятельно. Антивирусы, безопасное использование сети, своевременная чистка — залог долгой и успешной работы любой ОС.
Ошибка 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:
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.
При попытке офлайн установки .NET 3.5 со смонтированного диска с дистрибутивом ОС (использовался именно тот установочный диск, с которого разворачивалась система) командой:
Выполнение команды DISM завершается с ошибкой 0x800F081F:
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
В локализованной версии Windows 8 ошибка, соответственно:
Лог 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:
Если любое из этих обновление установлено в системе, его нужно удалить (процедура подробно описана в статье Как правильно удалить обновление в Windows ). После этого можно установить .Net Framework 3.5 как обычно (он установится без ошибки), а затем еще раз установить удаленные обновления (дабы не оставлять дыру в системе).
Конфликт Language Pack и .NET Framework 3.5
На машине с Windows 8.1, на которой также присутствовала рассматриваемая проблема, указанные выше обновлений отсутствовали. В попытках решить проблему перебрали множество вариантов, начиная от последовательного удаления всех обновлений и заканчивая восстановлением хранилища компонентов. Но эффекта так и не достигли…
Как не странно, помогло удаление дополнительного (русского) языкового пакета (команда lpksetup).
После удаления языкового пакета, .NET Framework устанавливается корректно. Затем можно заново установить нужный Language Pack.