Jak naprawić błąd Windows 10 0xc1800118 na WSUS

Instalowanie aktualizacji systemu Windows 10 może czasami być dość trudne ze względu na wszystkie błędy, które mogą wystąpić podczas i po procesie instalacji. Komunikat o błędzie 0xc1800118 jest jednym z najczęściej spotykanych błędów podczas instalowania aktualizacji systemu Windows 10 lub nowych wersji systemu operacyjnego.

Błąd 0xc1800118 dotyczy wielu użytkowników systemu Windows 10

Otrzymuję komunikat „Aktualizacja funkcji do systemu Windows 10, błąd wersji 1607 0xc1800118 ″ i instalacja nie powiedzie się. Czy ktokolwiek może wyjaśnić, co oznacza błąd 0xc1800118. Dziękuję Ci

Ten problem występuje, jeśli aktualizacja systemu Windows 10 w wersji 1607 jest zaszyfrowana, ale nie pojawia się jako zaszyfrowana w bazie danych WSUS. Microsoft wyjaśnia również, że ten problem może wystąpić, jeśli aktualizacje zostaną zsynchronizowane przed zastosowaniem KB3159706.

Kroki, aby naprawić błąd 0xc1800118

1. Sprawdź, czy WSUS jest w złym stanie, na co wskazuje wynik „TotalResults> 0”. Aby to zrobić, uruchom następujące zapytanie:
wybierz TotalResults = Count (*)
z tbFile
gdzie (IsEncrypted = 1 i DecryptionKey ma wartość NULL) lub (FileName jak „% 14393% .esd” i IsEncrypted = 0)

2. Wyłącz klasyfikację „Uaktualnienia” (USS lub autonomiczny WSUS). Aby to zrobić, uruchom następujące polecenie w programie PowerShell:
Get-WsusClassification | Where-Object -FilterScript {$ _. Classification.Title -Eq „Upgrades”} | Set-WsusClassification -Disable

3. Usuń wcześniej zsynchronizowane aktualizacje (wszystkie WSUS — zacznij od najwyższego serwera). Uruchom następujące polecenie PowerShell:
$ s = Get-WsusServer
1607 $ Aktualizacje = $ s.SearchUpdates („wersja 1607”)
1607 $ Aktualizacje | foreach {$ _. Decline ()}
1607 $ Aktualizacje | foreach {$ s.DeleteUpdate ($ _. Id.UpdateId)}

W drugim poleceniu „wersja 1607” oznacza aktualizacje w języku angielskim. W przypadku aktualizacji w języku innym niż angielski zamień odpowiednie dla języka tytuły na ciąg SearchUpdates.

Ważna uwaga: Możesz mieć wrażenie, że Powershell nic nie robi. Nie będziesz mógł wpisywać poleceń, ponieważ narzędzie po prostu się tam zawiesza. Usunięcie aktualizacji może czasem potrwać dłużej niż 30 minut. Po prostu pozwól mu działać, dopóki nie wrócisz do monitu.

4. Włącz klasyfikację „Uaktualnienia” (USS lub autonomiczny WSUS). Uruchom następujące polecenie PowerShell:
Get-WsusClassification | Where-Object -FilterScript {$ _. Classification.Title -Eq „Upgrades”} | Set-WsusClassification

5. Usuń pliki z tabeli tbFile w bazie danych WSUS (wszystkie WSUS — start na najwyższym serwerze) za pomocą tej komendy:
deklaruj tabelę @NotNeededFiles (FileDigest binary (20) UNIQUE);
wstaw do @NotNeededFiles (FileDigest) (wybierz FileDigest z tbFile, gdzie FileName jak „% 14393% .esd”, z wyjątkiem wybierz FileDigest z tbFileForRevision);
usuń z tbFileOnServer, w którym znajduje się FileDigest (wybierz FileDigest z @NotNeededFiles)
usuń z tbFile gdzie FileDigest w (wybierz FileDigest z @NotNeededFiles)

6. Wykonaj pełną synchronizację (USS lub autonomiczny WSUS) przy użyciu następującego polecenia PowerShell:
$ sub = $ s.GetSubscription ()
$ sub.StartSynchronization ()

7. Jeśli błąd 0xc1800118 nadal pojawia się na ekranie, uruchom następujące polecenie w wierszu polecenia:

  • Net Stop Wuauserv
  • del% windir% SoftwareDistributionDataStore *

8. Wyszukaj aktualizacje.

Link do głównej publikacji