Windows Update

Jeg havde problemer med at ”Windows Update” ikke fungerede.

Mange undersøgelser på nettet gav ikke noget der fik det til at virke.

Men! - så faldt jeg over denne hjemmeside:

https://answers.microsoft.com/da-dk/windows/forum/windows_other-update/fix-windows-update-i-windows-7-81-og-10-med-dette/9b18c211-862e-4c80-90ec-c4086979a76f

Jeg kopierede scriptet til en .cmd fil, kørte filen, og alt fungerede derefter.

Tak til Michael

 

Michael Morten Sonne

Michael Morten Sonne

Systemadministrator, Denmark


Fix Windows Update i Windows 7, 8.1 og 10 med dette script.
Dette fixer også det, som de forskelige fejlfindings værktøjer ikke kan fixe fra Windows selv.

Med dette script nulstiller du hele Windows Update på en Windows 7, 8, 8.1 eller 10. Dette har altid virket for mig.

Havde f.eks en fejl på min Windows 10 Pro her igår, fejlfindings værktøjet i Windows "sagde" det var fixet, men så kom der bare en anden fejl... smart...

Så brugte jeg dette, og det har virket siden! LÆKKERT!

 

- Script start -

@echo off
goto check_Permissions
:check_Permissions
echo.
echo Der skal administrator rettigheder til.
echo.

net session >nul 2>&1
if %errorLevel% == 0 (
title Fix Windows update - Administrator
(echo Korrekt: Administrator rettigheder fundet.
echo.
pause
goto start)

) else (
title Fix Windows update - Ikke administrator
(echo Fejl: Administrator rettigheder ikke fundet. Start scriptet som administrator!
echo.
pause
goto luk)
)
pause >nul
:start
cls
title Fixer Windows update
echo.
echo VIGTIGT!
echo NET HELPMSG XXXX vises hvis en tjeneste allerede er stoppet osv.
echo Tag dig ikke af dette!
echo.
echo Starter script...
echo.
:bits
net stop bits
echo Checking the bits service status.
sc query bits | findstr /I /C:"STOPPED" 
if not %errorlevel%==0 ( 
    goto bits 

:wuauserv
net stop wuauserv
echo Checking the wuauserv service status.
sc query wuauserv | findstr /I /C:"STOPPED" 
if not %errorlevel%==0 ( 
    goto wuauserv 

:appidsvc
net stop appidsvc
echo Checking the appidsvc service status.
sc query appidsvc | findstr /I /C:"STOPPED" 
if not %errorlevel%==0 ( 
    goto appidsvc 

:cryptsvc
net stop cryptsvc
echo Checking the cryptsvc service status.
sc query cryptsvc | findstr /I /C:"STOPPED" 
if not %errorlevel%==0 ( 
    goto cryptsvc 

Ipconfig /flushdns
del /s /q /f "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat" 
cd /d %windir%\system32
if exist "%SYSTEMROOT%\winsxs\pending.xml.bak" del /s /q /f "%SYSTEMROOT%\winsxs\pending.xml.bak" 
if exist "%SYSTEMROOT%\winsxs\pending.xml" ( 
    takeown /f "%SYSTEMROOT%\winsxs\pending.xml" 
    attrib -r -s -h /s /d "%SYSTEMROOT%\winsxs\pending.xml" 
    ren "%SYSTEMROOT%\winsxs\pending.xml" pending.xml.bak 

if exist "%SYSTEMROOT%\SoftwareDistribution.bak" rmdir /s /q "%SYSTEMROOT%\SoftwareDistribution.bak"
if exist "%SYSTEMROOT%\SoftwareDistribution" ( 
    attrib -r -s -h /s /d "%SYSTEMROOT%\SoftwareDistribution" 
    ren "%SYSTEMROOT%\SoftwareDistribution" SoftwareDistribution.bak 

if exist "%SYSTEMROOT%\system32\Catroot2.bak" rmdir /s /q "%SYSTEMROOT%\system32\Catroot2.bak" 
if exist "%SYSTEMROOT%\system32\Catroot2" ( 
    attrib -r -s -h /s /d "%SYSTEMROOT%\system32\Catroot2" 
    ren "%SYSTEMROOT%\system32\Catroot2" Catroot2.bak 

if exist "%SYSTEMROOT%\WindowsUpdate.log.bak" del /s /q /f "%SYSTEMROOT%\WindowsUpdate.log.bak" 
if exist "%SYSTEMROOT%\WindowsUpdate.log" ( 
    attrib -r -s -h /s /d "%SYSTEMROOT%\WindowsUpdate.log" 
    ren "%SYSTEMROOT%\WindowsUpdate.log" WindowsUpdate.log.bak 

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)
echo.
echo Registrere Windows Update filer
regsvr32.exe /s atl.dll 
regsvr32.exe /s urlmon.dll 
regsvr32.exe /s mshtml.dll 
regsvr32.exe /s shdocvw.dll 
regsvr32.exe /s browseui.dll 
regsvr32.exe /s jscript.dll 
regsvr32.exe /s vbscript.dll 
regsvr32.exe /s scrrun.dll 
regsvr32.exe /s msxml.dll 
regsvr32.exe /s msxml3.dll 
regsvr32.exe /s msxml6.dll 
regsvr32.exe /s actxprxy.dll 
regsvr32.exe /s softpub.dll 
regsvr32.exe /s wintrust.dll 
regsvr32.exe /s dssenh.dll 
regsvr32.exe /s rsaenh.dll 
regsvr32.exe /s gpkcsp.dll 
regsvr32.exe /s sccbase.dll 
regsvr32.exe /s slbcsp.dll 
regsvr32.exe /s cryptdlg.dll 
regsvr32.exe /s oleaut32.dll 
regsvr32.exe /s ole32.dll 
regsvr32.exe /s shell32.dll 
regsvr32.exe /s initpki.dll 
regsvr32.exe /s wuapi.dll 
regsvr32.exe /s wuaueng.dll 
regsvr32.exe /s wuaueng1.dll 
regsvr32.exe /s wucltui.dll 
regsvr32.exe /s wups.dll 
regsvr32.exe /s wups2.dll 
regsvr32.exe /s wuweb.dll 
regsvr32.exe /s qmgr.dll 
regsvr32.exe /s qmgrprxy.dll 
regsvr32.exe /s wucltux.dll 
regsvr32.exe /s muweb.dll 
regsvr32.exe /s wuwebv.dll
regsvr32 /s wudriver.dll
netsh winsock reset
netsh winsock reset proxy
echo Windows Update filer registreret
echo.
net start bits
net start wuauserv
net start appidsvc
net start cryptsvc
echo Windows Update er fixet!
echo.
pause
:luk  

- Script slut –

 

Kopier dette ind i notesblok, og gem det som f.eks. WindowsUpdateFix.cmd. Så er du sikker på Windows Update kommer til at virke igen ;-)

N.B Når det skal gemmes som, så under filtype skal der vælges alle filer.

 

HUSK, KUN TIL WINDOWS 7 til og med 10 P.T.