Disassembler

Artificial intelligence is no match for natural stupidity.
04dubna2013

Reset služby Windows Update


Nějakou dobu mi na jednom stroji trucovala služba Windows Update. Každý pokus o vyhledání nových aktualizací skončil chybou, a jak to tak u Microsoftu bývá zvykem, chybové kódy jsou naprosto nicneříkající a pro jistotu ani nejsou zahrnuty v nápovědě.

8024800A


Kód chyby, kterou mě Windows Update pokaždé počastoval, byl 8024800A. Po chvilce googlení jsem se dopídil na MSDN fórum, kde se již podobný problém řešil a úspěšně vyřešil. Stačí ze systému vygumovat mezipaměť s uloženými daty o aktualizačních balíčcích. A také restartovat pár služeb, které Windows Update potřebuje k běhu, nebo jeho běh nějakým způsobem ovlivňují. Jmenovitě

Informace o aktualizacích pak sedí v umístění C:\Windows\SoftwareDistribution a katalogy k nim náležící pak v C:\Windows\System32\catroot2. Obě tyto složky je třeba vynést do smetí.

Dávkový soubor, který udělá většinu špinavé práce za vás, pak vypadá následovně:

@ECHO OFF

net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver

ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old

net start wuauserv
net start cryptSvc
net start bits
net start msiserver

Po jeho spuštění byste už měli být schopní opět přijímat aktualizace. A protože byly vymazány informace o všech aktualizacích, včetně těch, které jste neinstalovali, přijdou zase i oblíbené jazykové balíčky, Silverlight, Ballot screen a podobné kraviny, které je záhodno skrýt a na veřejnosti o nich ani nemluvit.

Pokud tahle metoda zabere, můžete zálohované složky C:\Windows\SoftwareDistribution.old a C:\Windows\System32\catroot2.old po úspěšné aktualizaci s klidným svědomím smazat. Pokud budete mít s Windows Update problémy i nadále, obrňte se trpělivostí a pokračujte na KB 971058.