Windows 7 – Probleme mit Windows Update

Immer wieder kommt es vor, dass das ein oder andere Update über Windows Update zu einem Fehler führt, der einfach nicht zu behben ist. In diesen Fällen kann man Windows Update und die heruntergeladenen Komponenten reparieren.

Die Anleitung gilt für Windows ab Vista/Server 2008 und ist nicht unter Windows XP benutzbar.

Defekte Pakete

Komponenten mit Status abfragen

Sollten hier Fehler erscheinen, müssen die fehlerhaften Packages gelöscht werden. Damit sollte das Problem dann schon behoben sein.

dism /online /get-packages

Fehlerhfate Packages entfernen

„Package_for_KB976932~31bf3856ad364e35~amd64~~6.1.1.17105“ ist ein Beispiel das durch das fehlerhafte Paket ersetzt werden muss.

dism /online /remove-package /packagename:Package_for_KB976932~31bf3856ad364e35~amd64~~6.1.1.17105

Windows Update reparieren

Sollte das Problem nicht durch ein fehlerhaftes Package enstehen, muss Windows Update repariert, bzw. auf den Standard zurückgesetzt, sowie alle gecachten Dateien entfern werden.

Dienste beenden

Um die Verzeichnisse umbennen zu können, müssen die Dienste beendet werden.

net stop bits
net stop wuauserv

Cache leeren

Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"

Ordner umbennen

Ren %systemroot%\SoftwareDistribution\DataStore *.bak
Ren %systemroot%\SoftwareDistribution\Download *.bak
Ren %systemroot%\system32\catroot2 *.bak

Bibliotheken regestrieren

Es empfiehlt sich den Inhalt in eine cmd Datei zu kopieren und auszuführen.

cd /d %windir%\system32
regsvr32.exe atl.dll
regsvr32.exe urlmon.dll
regsvr32.exe mshtml.dll
regsvr32.exe shdocvw.dll
regsvr32.exe browseui.dll
regsvr32.exe jscript.dll
regsvr32.exe vbscript.dll
regsvr32.exe scrrun.dll
regsvr32.exe msxml.dll
regsvr32.exe msxml3.dll
regsvr32.exe msxml6.dll
regsvr32.exe actxprxy.dll
regsvr32.exe softpub.dll
regsvr32.exe wintrust.dll
regsvr32.exe dssenh.dll
regsvr32.exe rsaenh.dll
regsvr32.exe gpkcsp.dll
regsvr32.exe sccbase.dll
regsvr32.exe slbcsp.dll
regsvr32.exe cryptdlg.dll
regsvr32.exe oleaut32.dll
regsvr32.exe ole32.dll
regsvr32.exe shell32.dll
regsvr32.exe initpki.dll
regsvr32.exe wuapi.dll
regsvr32.exe wuaueng.dll
regsvr32.exe wuaueng1.dll
regsvr32.exe wucltui.dll
regsvr32.exe wups.dll
regsvr32.exe wups2.dll
regsvr32.exe wuweb.dll
regsvr32.exe qmgr.dll
regsvr32.exe qmgrprxy.dll
regsvr32.exe wucltux.dll
regsvr32.exe muweb.dll
regsvr32.exe wuwebv.dll

Standardsicherheitsbeschreibung zurücksetzten

sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)

Winsock zurücksetzen

netsh reset winsock

Dienste starten

Nun können die Dienste wieder gestarten werden.

net start bits
net start wuauserv

BITS-Warteschlagen leeren

bitsadmin.exe /reset /allusers