Błąd 0x800F081F podczas instalowania programu .NET Framework 3.5 w systemie Windows 8 / Server 2012

Nie jest tajemnicą, że w Windows 8 / Windows Server 2012 / R2 .Net Framework 3.5 nie jest dostarczany z systemem operacyjnym (jako część koncepcji Funkcje na żądanie), a jego instalacja wymaga dystrybucji systemu operacyjnego lub bezpośredniego dostępu do witryny aktualizacji firmy Microsoft. W jednym z poprzednich artykułów pokazaliśmy już, jak zainstalować .NET Framework 3.5 na Windows Server 2012 R2 / Windows 8. Drugiego dnia, w kilku systemach, wystąpił błąd instalacji .NET Framework 3.5. Problem zaobserwowano podczas instalowania komponentu zarówno na serwerze Windows Server 2012, jak i klienckim Windows 8.1.

Co najciekawsze, okazało się, że udało się pokonać problem różnymi metodami :).

Treść

  • Nie można zainstalować .NET Framework 3.5 w systemie Windows 8 / Windows Server 2012
  • Niepoprawne aktualizacje uniemożliwiające instalację .NET 3.5
  • Pakiet językowy konfliktu i .NET Framework 3.5

Nie można zainstalować .NET Framework 3.5 w systemie Windows 8 / Windows Server 2012

Podczas instalowania programu .NET Framework 3.5 w systemie Windows 8 online za pomocą Panelu sterowania -> Programy i funkcje -> Włącz lub wyłącz funkcje systemu Windows - występuje błąd 0x800F0906:

Błąd: 0x800F0906

System Windows nie mógł połączyć się z Internetem, aby pobrać niezbędne pliki. Upewnij się, że masz połączenie z Internetem i kliknij „Ponów”, aby spróbować ponownie.

Uwaga. Na problematycznych komputerach nie było problemów z dostępem do Internetu.

Podczas próby offline instalacji .NET 3.5 z zamontowanego dysku z dystrybucją systemu operacyjnego (użyto dokładnego dysku instalacyjnego, z którego wdrożono system) za pomocą polecenia:

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

Polecenie DISM kończy się niepowodzeniem 0x800F081F:

Narzędzie do obsługi i zarządzania obrazami wdrażania Wersja: 6.2.9200.16384
Wersja obrazu: 6.2.9200.16384
Włączanie funkcji [=========================== 66,5% ======]

Błąd: 0x800f081f
Nie można znaleźć plików źródłowych.
Użyj opcji „Źródło”, aby określić lokalizację plików wymaganych do przywrócenia funkcji. Aby uzyskać więcej informacji
Informacje na temat określania lokalizacji źródłowej można znaleźć na stronie http://go.microsoft.com/fwlink/?LinkId=243077.
Plik dziennika DISM można znaleźć pod adresem C: \ Windows \ Logs \ DISM \ dism.log

W zlokalizowanej wersji systemu Windows 8 błąd odpowiednio:

Włącz funkcję
[============================ 66,5% ======]
Błąd: 0x800f081f
Nie można znaleźć plików źródłowych.

Dziennik C: \ Windows \ Logs \ DISM \ dism.log zawiera następujące błędy:

24.10.2014, 10:11:22, Informacje Menedżer pakietów DISM DISM: PID = 776 TID = 4024 Błąd w działaniu: nie znaleziono źródła pakietu lub pliku, ResolveSource () nie powiodło się. (CBS HRESULT = 0x800f081f) - CCbsConUIHandler :: Błąd
24.10.2014, 10:11:22, Błąd Menedżer pakietów DISM DISM: PID = 776 TID = 2856 Nie udało się sfinalizować zmian. - CDISMPackageManager :: Internal_Finalize (godz .: 0x800f081f)
2014-10-24 10:11:22, Błąd Menedżer pakietów DISM DISM: PID = 776 TID = 2856 Nie można znaleźć plików źródłowych; ich lokalizację należy określić za pomocą opcji / source, aby przywrócić funkcję. - GetCbsErrorMsg
24.10.2014, 10:11:22, Błąd Menedżer pakietów DISM DISM: PID = 776 TID = 2856 Nieudane przetwarzanie zmian pakietów z opcjami sesji - CDISMPackageManager :: ProcessChangesWithOptions (godz .: 0x800f081f)
2014-10-24 10:11:22, Błąd Menedżer pakietów DISM DISM: PID = 776 TID = 2856 Nieudane zmiany procesu. - CPackageManagerCLIHandler :: Private_ProcessFeatureChange (godz .: 0x800f081f)
2014-10-24 10:11:23, Błąd Menedżer pakietów DISM DISM: PID = 776 TID = 2856 Błąd podczas przetwarzania funkcji włączania polecenia. - CPackageManagerCLIHandler :: ExecuteCmdLine (godz .: 0x800f081f)

Niepoprawne aktualizacje uniemożliwiające instalację .NET 3.5

W jednym z ostatnich artykułów w bazie wiedzy Microsoft Knowledge Base http://support2.microsoft.com/kb/3005628 opisano problem z sierpniowymi aktualizacjami zabezpieczeń systemu Windows, których instalacja prowadzi do sytuacji, w której nie można zainstalować składnika .NET Framework 3.5. Chodzi o dwie aktualizacje:

  • KB2966828 - MS14-046: Aktualizacja zabezpieczeń dla .NET Framework 3.5 w systemie Windows 8.1 i Windows Server 2012 R2: 12 sierpnia 2014 r
  • KB2966827 - MS14-046: Aktualizacja zabezpieczeń dla .NET Framework 3.5 w systemie Windows 8 i Windows Server 2012: 12 sierpnia 2014 r

Jak widać z opisów, te aktualizacje zabezpieczeń są przeznaczone dla systemu .NET Framework 3.5 w systemie Windows 8.1 i Windows Server 2012 R2 i są one instalowane niezależnie od tego, czy składnik .NET Framework 3.5 jest zainstalowany w systemie, czy nie.

Możesz zrozumieć, czy dane aktualizacji są instalowane w systemie w ten sposób, czy za pomocą następującego polecenia programu PowerShell:

Get-HotFix |? $ _. Poprawka typu „* 2966828 *”

Jeśli którakolwiek z tych aktualizacji jest zainstalowana w systemie, musisz ją usunąć (procedurę opisano szczegółowo w artykule Jak poprawnie usunąć aktualizację w systemie Windows). Następnie możesz zainstalować .Net Framework 3.5 jak zwykle (instaluje się bez błędu), a następnie ponownie zainstalować aktualizacje zdalne (aby nie pozostawić dziury w systemie).

Wskazówka. Alternatywnie zamiast odinstalowywania / instalowania aktualizacji w portalu Microsoft zaleca się zainstalowanie poprawki 3005628. Ta poprawka usunie aktualizacje 2966827 2966828 w systemach, w których .NET Framework 3.5 nie jest zainstalowany. Która metoda jest wygodniejsza - Ty decydujesz.

Pakiet językowy konfliktu i .NET Framework 3.5

Na komputerze z systemem Windows 8.1, który również miał problem, brakowało powyższych aktualizacji. Próbując rozwiązać problem, przeszliśmy przez wiele opcji, od sekwencyjnego usuwania wszystkich aktualizacji i kończąc na przywróceniu magazynu składników. Ale efekt nigdy nie został osiągnięty ...

Co dziwne, usunięcie dodatkowego (rosyjskiego) pakietu językowego (polecenie lpksetup).

Po usunięciu pakietu językowego .NET Framework instaluje się poprawnie. Następnie możesz ponownie zainstalować żądany pakiet językowy.