• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

FIXED!! Windows 7 sp1 never ends searching for updates

1b7c98.jpg
 
By installing this update manually before the first scan, it finishes in much shorter time. I will integrate it to my W7 ISO.
https://support.microsoft.com/en-us/kb/3138612

I did a quick test in VM's, the one with the update installed (to the right) found all the updates after 11 minutes,
the other one was still scanning after over 90 minutes when I shut it off.
View attachment 79717

Source.

And while you're at it, you could integrate the " convenience rollup update for Windows 7 for x64-based Systems (KB3125574)"

It's the cumulative update package covering everything ever made after SP1 until now.

Edit: anyone interested to slipstream this huge update package should read this pretty straightforward guide

and say BYE to this ugly screen :)

image-42.png



http://www.fosund.com/slipstream-th...ate-april-2016-with-windows-7-enterprise-x64/
 
Last edited:
refer to askwoody.com for the slow updates deal.
 
refer to askwoody.com for the slow updates deal.

Well this thread on TPU helped me a few times to get it working again (and still working fine now), no reason going to this "woody", for me at least.
 
I use WSUS Offline first, and only after it's done I check by Windows Update.
WU can complete it's job much faster, when most of the updates are already installed.
 
Well this thread on TPU helped me a few times to get it working again (and still working fine now), no reason going to this "woody", for me at least.

Woody is the guy that writes the windows books for dummy's, plus there is MS DEFCON for patches that cause havoc on the OS too.
 
I made another revision for you guys. I have made it a bit more clear during the stages what is needed since I have seen instances of people not allowing UAC or the process taking an exceptionally long time due to update process already running. I also have it kill the process during each stage to make stalls a little less frequent. I also added a more robust architecture check using WMI instead of simply checking for the x86 directory because apparently that is a thing that happens /shrug.

Tin foil hat ppl can check it easily here
Code:
@Echo off
SETLOCAL EnableDelayedExpansion
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do     rem"') do (
  set "DEL=%%a"
)
title Windows 7 Quick Patch V .4
cls

:checkPrivileges 
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto prechk) else ( goto getPrivileges ) 

:getPrivileges 
if '%1'=='ELEV' (shift & goto prechk)                              
for /f "delims=: tokens=*" %%A in ('findstr /b ::- "%~f0"') do @echo(%%A
setlocal DisableDelayedExpansion
set "batchPath=%~0"
setlocal EnableDelayedExpansion
Echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs" 
Echo UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs" 
"%temp%\OEgetPrivileges.vbs" 
exit /B

:prechk
set /p var=<C:\Step.txt
call :%var% 2> NUL

:Start
cls
Echo.
Echo This script is based off of information from:
Echo.
Echo http://www.freenode-windows.org/resources/vista-7/windows-update
Echo.
Echo This script is brought to you by Solaris17 of TPU
Echo.
Echo This script is for Windows 7. I didnt put alot of failsafe time into it.
Echo.
Echo This script should automatically run after rebooting.
Echo.
pause
copy %0 "%USERPROFILE%\Start Menu\Programs\Startup"
mkdir C:\Win7qUD
set /p var=<C:\Step.txt
call :%var% 2> NUL

:detect
@Echo off
cls
ver | findstr /i "5\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "5\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto archchk
ver | findstr /i "6\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.3\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "10\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
goto warn

:warn
Echo.
Echo This is not Windows 7. This won't work for you.
Echo.
pause
goto exit

:archchk
Echo.
wmic os get osarchitecture | findstr /i "64-bit" > nul
IF %ERRORLEVEL% EQU 0 goto 64BIT
wmic os get osarchitecture | findstr /i "32-bit" > nul
IF %ERRORLEVEL% EQU 0 goto 32BIT

:64BIT
goto 64step1

:64step1
@echo 64step1 > C:\Step.txt
:: Kill Services and folders
cls
Echo.
Echo Step 1 of 6
Echo.
Echo Killing Services etc
SC stop wuauserv
rmdir c:\windows\softwaredistribution\WuRedir /s /q


:64step2
@echo 64step2 > C:\Step.txt
:: Download KB fixes x64
SC stop wuauserv
cls
echo.
Echo Step 2 of 6
Echo.
Echo Downloading KB updates.
Echo.
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/5/D/0/5D0821EB-A92D-4CA2-9020-EC41D56B074F/Windows6.1-KB3020369-x64.msu C:\Win7qUD\1st.msu
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/5/6/0/560504D4-F91A-4DEB-867F-C713F7821374/Windows6.1-KB3172605-x64.msu C:\Win7qUD\2nd.msu
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu C:\Win7qUD\3rd.msu

:64step3
@echo 64step3 > C:\Step.txt
:: Installing first MSU
SC stop wuauserv
cls
Echo.
Echo Step 3 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "SVCHOST" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\1st.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step4 > C:\Step.txt
exit

:64step4
@echo 64step4 > C:\Step.txt
:: Installing second MSU
SC stop wuauserv
cls
Echo.
Echo Step 4 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\2nd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step5 > C:\Step.txt
exit

:64step5
@echo 64step5 > C:\Step.txt
:: Installing third MSU
SC stop wuauserv
cls
Echo.
Echo Step 5 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 35min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\3rd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step6 > C:\Step.txt
exit

:64step6
Echo.
:: Cleaning up files etc
SC stop wuauserv
cls
rmdir C:\Win7qUD /s /q
del C:\Step.txt
Echo.
Echo Step 6 of 6
Echo.
Echo Complete^^!
Echo.
Echo You should now be able to continue Windows updates as normal.
Echo.
Echo You can delete this script after it closes if you wish.
Echo.
Echo This script will now delete itself from startup.
Echo.
pause
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
control /name Microsoft.WindowsUpdate >nul
goto exit

:32BIT
goto 32step1

:32step1
@echo 32step1 > C:\Step.txt
:: Kill Services and folders
SC stop wuauserv
cls
Echo.
Echo Step 1 of 6
Echo.
Echo Killing Services etc
SC stop wuauserv
rmdir c:\windows\softwaredistribution\WuRedir /s /q


:32step2
@echo 32step2 > C:\Step.txt
:: Download KB fixes x86
SC stop wuauserv
cls
echo.
Echo Step 2 of 6
Echo.
Echo Downloading KB updates.
Echo.
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/C/0/8/C0823F43-BFE9-4147-9B0A-35769CBBE6B0/Windows6.1-KB3020369-x86.msu C:\Win7qUD\1st.msu
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/C/D/5/CD5DE7B2-E857-4BD4-AA9C-6B30C3E1735A/Windows6.1-KB3172605-x86.msu C:\Win7qUD\2nd.msu
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu C:\Win7qUD\3rd.msu

:32step3
@echo 32step3 > C:\Step.txt
:: Installing first MSU
SC stop wuauserv
cls
Echo.
Echo Step 3 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "SVCHOST" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\1st.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step4 > C:\Step.txt
exit

:32step4
@echo 32step4 > C:\Step.txt
:: Installing second MSU
SC stop wuauserv
cls
Echo.
Echo Step 4 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\2nd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step5 > C:\Step.txt
exit

:32step5
@echo 32step5 > C:\Step.txt
:: Installing third MSU
SC stop wuauserv
cls
Echo.
Echo Step 5 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 35min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\3rd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step6 > C:\Step.txt
exit

:32step6
Echo.
:: Cleaning up files etc
SC stop wuauserv
cls
rmdir C:\Win7qUD /s /q
del C:\Step.txt
echo.
Echo Step 6 of 6
Echo.
Echo Complete^^!
Echo.
Echo You should now be able to continue Windows updates as normal.
Echo.
Echo You can delete this script after it closes if you wish.
Echo.
Echo This script will now delete itself from startup.
Echo.
pause
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
control /name Microsoft.WindowsUpdate >nul
goto exit

:exit
rmdir C:\Win7qUD /s /q
del C:\Step.txt
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
exit

::v4 Fixed bug with other windows versions leaving script in startup. | Clarified actions needed by user | Improved Architecture check | Improved chance script won't hang via WU
::v3 Added /quiet | Fixed bug with other windows versions leaving script in startup. | Put check for previous run at head to skip start text.
 

Attachments

My dads Windows 7sp1 laptop finds the updates quickly now!!:clap:
It's working now as it should.

Thanks to the solutions in this thread!
:lovetpu:
 
And while you're at it, you could integrate the " convenience rollup update for Windows 7 for x64-based Systems (KB3125574)"

It's the cumulative update package covering everything ever made after SP1 until now.

Edit: anyone interested to slipstream this huge update package should read this pretty straightforward guide

and say BYE to this ugly screen :)

image-42.png
I actually prefer individual kb's and detest the rollup package.
I lodged a complaint with Microshaft about not giving us the choice.
It's my download bandwidth and computer they are playing with.
 
Thank you very much for the update, I improved your script to keep downloaded updates in same folder as script instead of just saving them to C:\Win7qUD

In step2 the script hashes the respective files and avoids a re-download if the files exist and have correct checksum. This allows for updates to multiple PCs and for offline deployment or low-bandwidth connections

EDIT: Updated hash checking and copying to use full paths, in order to properly run in the elevated command prompt

Changes done follow:

:64step2
Code:
Echo checking first file
certutil -hashfile "%~dp0\1.Windows6.1-KB3020369-x64.msu" SHA1 | findstr /i /c:"53 93 06 64 69 75 8e 61 9f 21 73 1f c3 1f f2 d1 09 59 54 45" > nul
IF %ERRORLEVEL% EQU 0 goto 64step2_1stfinished
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/5/D/0/5D0821EB-A92D-4CA2-9020-EC41D56B074F/Windows6.1-KB3020369-x64.msu "%~dp0\1.Windows6.1-KB3020369-x64.msu"
:64step2_1stfinished
Echo checking second file
certutil -hashfile "%~dp0\2.Windows6.1-KB3172605-x64.msu" SHA1 | findstr /i /c:"26 f4 cc 78 31 a0 d7 63 93 44 5b 7b 0a 1a 3e d5 cd 5b 40 47" > nul
IF %ERRORLEVEL% EQU 0 goto 64step2_2ndfinished
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/5/6/0/560504D4-F91A-4DEB-867F-C713F7821374/Windows6.1-KB3172605-x64.msu "%~dp0\2.Windows6.1-KB3172605-x64.msu"
:64step2_2ndfinished
Echo checking third file
certutil -hashfile "%~dp0\3.windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu" SHA1 | findstr /i /c:"2d af b1 d2 03 c8 96 42 39 af 30 48 b5 dd 4b 12 64 cd 93 b9" > nul
IF %ERRORLEVEL% EQU 0 goto 64step2_3rdfinished
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu "%~dp0\3.windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu"
:64step2_3rdfinished
Echo copying files
copy "%~dp0\1.Windows6.1-KB3020369-x64.msu" C:\Win7qUD\1st.msu
copy "%~dp0\2.Windows6.1-KB3172605-x64.msu" C:\Win7qUD\2nd.msu
copy "%~dp0\3.windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu" C:\Win7qUD\3rd.msu

:32step2
Code:
Echo checking first file
certutil -hashfile "%~dp0\1.Windows6.1-KB3020369-x86.msu" SHA1 | findstr /i /c:"82 e1 68 11 7c 23 f7 c4 79 a9 7e e9 6c 82 af 78 8d 07 45 2e" > nul
IF %ERRORLEVEL% EQU 0 goto 32step2_1stfinished
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/C/0/8/C0823F43-BFE9-4147-9B0A-35769CBBE6B0/Windows6.1-KB3020369-x86.msu "%~dp0\1.Windows6.1-KB3020369-x86.msu"
:32step2_1stfinished
Echo checking second file
certutil -hashfile "%~dp0\2.Windows6.1-KB3172605-x86.msu" SHA1 | findstr /i /c:"ae 03 cc bd 29 9e 43 4e a2 23 9f 1a d8 6f 16 4e 5f 4d ee da" > nul
IF %ERRORLEVEL% EQU 0 goto 32step2_2ndfinished
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/C/D/5/CD5DE7B2-E857-4BD4-AA9C-6B30C3E1735A/Windows6.1-KB3172605-x86.msu "%~dp0\2.Windows6.1-KB3172605-x86.msu"
:32step2_2ndfinished
Echo checking third file
certutil -hashfile "%~dp0\3.windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu" SHA1 | findstr /i /c:"ba 1f f5 53 73 12 56 17 95 cc 04 db 0b 02 fb b0 a7 4b 2c bd" > nul
IF %ERRORLEVEL% EQU 0 goto 32step2_3rdfinished
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu "%~dp0\3.windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu"
:32step2_3rdfinished
Echo copying files
copy "%~dp0\1.Windows6.1-KB3020369-x86.msu" C:\Win7qUD\1st.msu
copy "%~dp0\2.Windows6.1-KB3172605-x86.msu" C:\Win7qUD\2nd.msu
copy "%~dp0\3.windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu" C:\Win7qUD\3rd.msu


I made another revision for you guys. I have made it a bit more clear during the stages what is needed since I have seen instances of people not allowing UAC or the process taking an exceptionally long time due to update process already running. I also have it kill the process during each stage to make stalls a little less frequent. I also added a more robust architecture check using WMI instead of simply checking for the x86 directory because apparently that is a thing that happens /shrug.

Tin foil hat ppl can check it easily here
Code:
@Echo off
SETLOCAL EnableDelayedExpansion
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do     rem"') do (
  set "DEL=%%a"
)
title Windows 7 Quick Patch V .4
cls

:checkPrivileges
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto prechk) else ( goto getPrivileges )

:getPrivileges
if '%1'=='ELEV' (shift & goto prechk)                           
for /f "delims=: tokens=*" %%A in ('findstr /b ::- "%~f0"') do @echo(%%A
setlocal DisableDelayedExpansion
set "batchPath=%~0"
setlocal EnableDelayedExpansion
Echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"
Echo UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs"
"%temp%\OEgetPrivileges.vbs"
exit /B

:prechk
set /p var=<C:\Step.txt
call :%var% 2> NUL

:Start
cls
Echo.
Echo This script is based off of information from:
Echo.
Echo http://www.freenode-windows.org/resources/vista-7/windows-update
Echo.
Echo This script is brought to you by Solaris17 of TPU
Echo.
Echo This script is for Windows 7. I didnt put alot of failsafe time into it.
Echo.
Echo This script should automatically run after rebooting.
Echo.
pause
copy %0 "%USERPROFILE%\Start Menu\Programs\Startup"
mkdir C:\Win7qUD
set /p var=<C:\Step.txt
call :%var% 2> NUL

:detect
@Echo off
cls
ver | findstr /i "5\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "5\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto archchk
ver | findstr /i "6\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.3\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "10\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
goto warn

:warn
Echo.
Echo This is not Windows 7. This won't work for you.
Echo.
pause
goto exit

:archchk
Echo.
wmic os get osarchitecture | findstr /i "64-bit" > nul
IF %ERRORLEVEL% EQU 0 goto 64BIT
wmic os get osarchitecture | findstr /i "32-bit" > nul
IF %ERRORLEVEL% EQU 0 goto 32BIT

:64BIT
goto 64step1

:64step1
@echo 64step1 > C:\Step.txt
:: Kill Services and folders
cls
Echo.
Echo Step 1 of 6
Echo.
Echo Killing Services etc
SC stop wuauserv
rmdir c:\windows\softwaredistribution\WuRedir /s /q


:64step2
@echo 64step2 > C:\Step.txt
:: Download KB fixes x64
SC stop wuauserv
cls
echo.
Echo Step 2 of 6
Echo.
Echo Downloading KB updates.
Echo.
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/5/D/0/5D0821EB-A92D-4CA2-9020-EC41D56B074F/Windows6.1-KB3020369-x64.msu C:\Win7qUD\1st.msu
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/5/6/0/560504D4-F91A-4DEB-867F-C713F7821374/Windows6.1-KB3172605-x64.msu C:\Win7qUD\2nd.msu
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu C:\Win7qUD\3rd.msu

:64step3
@echo 64step3 > C:\Step.txt
:: Installing first MSU
SC stop wuauserv
cls
Echo.
Echo Step 3 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "SVCHOST" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\1st.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step4 > C:\Step.txt
exit

:64step4
@echo 64step4 > C:\Step.txt
:: Installing second MSU
SC stop wuauserv
cls
Echo.
Echo Step 4 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\2nd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step5 > C:\Step.txt
exit

:64step5
@echo 64step5 > C:\Step.txt
:: Installing third MSU
SC stop wuauserv
cls
Echo.
Echo Step 5 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 35min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\3rd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step6 > C:\Step.txt
exit

:64step6
Echo.
:: Cleaning up files etc
SC stop wuauserv
cls
rmdir C:\Win7qUD /s /q
del C:\Step.txt
Echo.
Echo Step 6 of 6
Echo.
Echo Complete^^!
Echo.
Echo You should now be able to continue Windows updates as normal.
Echo.
Echo You can delete this script after it closes if you wish.
Echo.
Echo This script will now delete itself from startup.
Echo.
pause
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
control /name Microsoft.WindowsUpdate >nul
goto exit

:32BIT
goto 32step1

:32step1
@echo 32step1 > C:\Step.txt
:: Kill Services and folders
SC stop wuauserv
cls
Echo.
Echo Step 1 of 6
Echo.
Echo Killing Services etc
SC stop wuauserv
rmdir c:\windows\softwaredistribution\WuRedir /s /q


:32step2
@echo 32step2 > C:\Step.txt
:: Download KB fixes x86
SC stop wuauserv
cls
echo.
Echo Step 2 of 6
Echo.
Echo Downloading KB updates.
Echo.
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/C/0/8/C0823F43-BFE9-4147-9B0A-35769CBBE6B0/Windows6.1-KB3020369-x86.msu C:\Win7qUD\1st.msu
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/C/D/5/CD5DE7B2-E857-4BD4-AA9C-6B30C3E1735A/Windows6.1-KB3172605-x86.msu C:\Win7qUD\2nd.msu
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu C:\Win7qUD\3rd.msu

:32step3
@echo 32step3 > C:\Step.txt
:: Installing first MSU
SC stop wuauserv
cls
Echo.
Echo Step 3 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "SVCHOST" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\1st.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step4 > C:\Step.txt
exit

:32step4
@echo 32step4 > C:\Step.txt
:: Installing second MSU
SC stop wuauserv
cls
Echo.
Echo Step 4 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\2nd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step5 > C:\Step.txt
exit

:32step5
@echo 32step5 > C:\Step.txt
:: Installing third MSU
SC stop wuauserv
cls
Echo.
Echo Step 5 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 35min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\3rd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step6 > C:\Step.txt
exit

:32step6
Echo.
:: Cleaning up files etc
SC stop wuauserv
cls
rmdir C:\Win7qUD /s /q
del C:\Step.txt
echo.
Echo Step 6 of 6
Echo.
Echo Complete^^!
Echo.
Echo You should now be able to continue Windows updates as normal.
Echo.
Echo You can delete this script after it closes if you wish.
Echo.
Echo This script will now delete itself from startup.
Echo.
pause
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
control /name Microsoft.WindowsUpdate >nul
goto exit

:exit
rmdir C:\Win7qUD /s /q
del C:\Step.txt
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
exit

::v4 Fixed bug with other windows versions leaving script in startup. | Clarified actions needed by user | Improved Architecture check | Improved chance script won't hang via WU
::v3 Added /quiet | Fixed bug with other windows versions leaving script in startup. | Put check for previous run at head to skip start text.
 
Last edited:
I also have two suggestions for improvement:

1. Add a link to this thread (preferrably the location of the last update) in your script, so that if someone stumbles upon your script, he/she can check for possible updates.

2. As step2 (download of updates) is the only one that is different between x86 and x64 architectures, you may consider making it step1 and then make the rest of the steps the same for both architectures. This will make the script shorter and easier to maintain.



I made another revision for you guys. I have made it a bit more clear during the stages what is needed since I have seen instances of people not allowing UAC or the process taking an exceptionally long time due to update process already running. I also have it kill the process during each stage to make stalls a little less frequent. I also added a more robust architecture check using WMI instead of simply checking for the x86 directory because apparently that is a thing that happens /shrug.

Tin foil hat ppl can check it easily here
Code:
@Echo off
SETLOCAL EnableDelayedExpansion
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do     rem"') do (
  set "DEL=%%a"
)
title Windows 7 Quick Patch V .4
cls

:checkPrivileges
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto prechk) else ( goto getPrivileges )

:getPrivileges
if '%1'=='ELEV' (shift & goto prechk)                             
for /f "delims=: tokens=*" %%A in ('findstr /b ::- "%~f0"') do @echo(%%A
setlocal DisableDelayedExpansion
set "batchPath=%~0"
setlocal EnableDelayedExpansion
Echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"
Echo UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs"
"%temp%\OEgetPrivileges.vbs"
exit /B

:prechk
set /p var=<C:\Step.txt
call :%var% 2> NUL

:Start
cls
Echo.
Echo This script is based off of information from:
Echo.
Echo http://www.freenode-windows.org/resources/vista-7/windows-update
Echo.
Echo This script is brought to you by Solaris17 of TPU
Echo.
Echo This script is for Windows 7. I didnt put alot of failsafe time into it.
Echo.
Echo This script should automatically run after rebooting.
Echo.
pause
copy %0 "%USERPROFILE%\Start Menu\Programs\Startup"
mkdir C:\Win7qUD
set /p var=<C:\Step.txt
call :%var% 2> NUL

:detect
@Echo off
cls
ver | findstr /i "5\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "5\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.1\." > nul
IF %ERRORLEVEL% EQU 0 goto archchk
ver | findstr /i "6\.2\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "6\.3\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
ver | findstr /i "10\.0\." > nul
IF %ERRORLEVEL% EQU 0 goto warn
goto warn

:warn
Echo.
Echo This is not Windows 7. This won't work for you.
Echo.
pause
goto exit

:archchk
Echo.
wmic os get osarchitecture | findstr /i "64-bit" > nul
IF %ERRORLEVEL% EQU 0 goto 64BIT
wmic os get osarchitecture | findstr /i "32-bit" > nul
IF %ERRORLEVEL% EQU 0 goto 32BIT

:64BIT
goto 64step1

:64step1
@echo 64step1 > C:\Step.txt
:: Kill Services and folders
cls
Echo.
Echo Step 1 of 6
Echo.
Echo Killing Services etc
SC stop wuauserv
rmdir c:\windows\softwaredistribution\WuRedir /s /q


:64step2
@echo 64step2 > C:\Step.txt
:: Download KB fixes x64
SC stop wuauserv
cls
echo.
Echo Step 2 of 6
Echo.
Echo Downloading KB updates.
Echo.
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/5/D/0/5D0821EB-A92D-4CA2-9020-EC41D56B074F/Windows6.1-KB3020369-x64.msu C:\Win7qUD\1st.msu
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/5/6/0/560504D4-F91A-4DEB-867F-C713F7821374/Windows6.1-KB3172605-x64.msu C:\Win7qUD\2nd.msu
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu C:\Win7qUD\3rd.msu

:64step3
@echo 64step3 > C:\Step.txt
:: Installing first MSU
SC stop wuauserv
cls
Echo.
Echo Step 3 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "SVCHOST" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\1st.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step4 > C:\Step.txt
exit

:64step4
@echo 64step4 > C:\Step.txt
:: Installing second MSU
SC stop wuauserv
cls
Echo.
Echo Step 4 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\2nd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step5 > C:\Step.txt
exit

:64step5
@echo 64step5 > C:\Step.txt
:: Installing third MSU
SC stop wuauserv
cls
Echo.
Echo Step 5 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 35min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\3rd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 64step6 > C:\Step.txt
exit

:64step6
Echo.
:: Cleaning up files etc
SC stop wuauserv
cls
rmdir C:\Win7qUD /s /q
del C:\Step.txt
Echo.
Echo Step 6 of 6
Echo.
Echo Complete^^!
Echo.
Echo You should now be able to continue Windows updates as normal.
Echo.
Echo You can delete this script after it closes if you wish.
Echo.
Echo This script will now delete itself from startup.
Echo.
pause
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
control /name Microsoft.WindowsUpdate >nul
goto exit

:32BIT
goto 32step1

:32step1
@echo 32step1 > C:\Step.txt
:: Kill Services and folders
SC stop wuauserv
cls
Echo.
Echo Step 1 of 6
Echo.
Echo Killing Services etc
SC stop wuauserv
rmdir c:\windows\softwaredistribution\WuRedir /s /q


:32step2
@echo 32step2 > C:\Step.txt
:: Download KB fixes x86
SC stop wuauserv
cls
echo.
Echo Step 2 of 6
Echo.
Echo Downloading KB updates.
Echo.
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/C/0/8/C0823F43-BFE9-4147-9B0A-35769CBBE6B0/Windows6.1-KB3020369-x86.msu C:\Win7qUD\1st.msu
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/C/D/5/CD5DE7B2-E857-4BD4-AA9C-6B30C3E1735A/Windows6.1-KB3172605-x86.msu C:\Win7qUD\2nd.msu
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu C:\Win7qUD\3rd.msu

:32step3
@echo 32step3 > C:\Step.txt
:: Installing first MSU
SC stop wuauserv
cls
Echo.
Echo Step 3 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "SVCHOST" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\1st.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step4 > C:\Step.txt
exit

:32step4
@echo 32step4 > C:\Step.txt
:: Installing second MSU
SC stop wuauserv
cls
Echo.
Echo Step 4 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 15min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\2nd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step5 > C:\Step.txt
exit

:32step5
@echo 32step5 > C:\Step.txt
:: Installing third MSU
SC stop wuauserv
cls
Echo.
Echo Step 5 of 6
Echo.
time /t
Echo.
Echo Starting Install...
Echo.
Echo This can take around 35min; reboot if machine hangs.
Echo.
Echo Do NOT attempt to run Windows Update during patching^^!
Echo.
Echo To check to see if its working "TrustedInstaller" should be going nuts.
Echo.
Echo *IMPORTANT* Allow UAC after reboot^^!
Echo.
Start /wait C:\Win7qUD\3rd.msu /quiet
shutdown /r /t 60 /c "Stage Complete: Process will continue after restart."
@echo 32step6 > C:\Step.txt
exit

:32step6
Echo.
:: Cleaning up files etc
SC stop wuauserv
cls
rmdir C:\Win7qUD /s /q
del C:\Step.txt
echo.
Echo Step 6 of 6
Echo.
Echo Complete^^!
Echo.
Echo You should now be able to continue Windows updates as normal.
Echo.
Echo You can delete this script after it closes if you wish.
Echo.
Echo This script will now delete itself from startup.
Echo.
pause
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
control /name Microsoft.WindowsUpdate >nul
goto exit

:exit
rmdir C:\Win7qUD /s /q
del C:\Step.txt
del "%USERPROFILE%\Start Menu\Programs\Startup\*.bat"
exit

::v4 Fixed bug with other windows versions leaving script in startup. | Clarified actions needed by user | Improved Architecture check | Improved chance script won't hang via WU
::v3 Added /quiet | Fixed bug with other windows versions leaving script in startup. | Put check for previous run at head to skip start text.
 
My tin foil hat sensor is going off
 
Pros:
  • No need for a script, easy to apply manually
  • Much smaller download, seems that KB3020369 is not required, only SP1 is needed

Cons:
  • Windows Update Client downloaded by the script is newer (June 2016 version is included in KB3172605 instead of March 2016)
  • You will still need to download/install hundreds of updates afterwards, most of them are already included in KB3125574 and installed by the script


Are there any pros/cons of using said script compared to installing a 3 MB update like I described?
 
  • Like
Reactions: SL2
Okay, a recent issue has arisen in these issues:

I recently had 2 different systems finally update Windows 7, however, both systems rebooted with errors showing several different .dll files missing!!! After doing a bit of research I found this solution:

Start the command prompt as administrator. (Note, this will not work if you do not run the command prompt as an administrator!)

Run the "sfc /scannow" command (Note: There is a space between sfc and /scannow.)

It will take awhile to scan. Probably around 15 to 30 minutes. Once it reaches 100% it will just sit there for another 5 to 10 minutes.



Both systems that I ran this command on have been repaired and working flawlessly.


Figured I would post this up for anyone that might have this newest issue.

Seems to be an issue lately with Windows 7 update service from good ole Microsoft. :p Imagine that.
M$ has a history of "updating" their older systems to slowly make them less compatible with more current software/hardware.
 
Thank you very much for the update, I improved your script to keep downloaded updates in same folder as script instead of just saving them to C:\Win7qUD

In step2 the script hashes the respective files and avoids a re-download if the files exist and have correct checksum. This allows for updates to multiple PCs and for offline deployment or low-bandwidth connections

EDIT: Updated hash checking and copying to use full paths, in order to properly run in the elevated command prompt

Changes done follow:

:64step2
Code:
Echo checking first file
certutil -hashfile "%~dp0\1.Windows6.1-KB3020369-x64.msu" SHA1 | findstr /i /c:"53 93 06 64 69 75 8e 61 9f 21 73 1f c3 1f f2 d1 09 59 54 45" > nul
IF %ERRORLEVEL% EQU 0 goto 64step2_1stfinished
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/5/D/0/5D0821EB-A92D-4CA2-9020-EC41D56B074F/Windows6.1-KB3020369-x64.msu "%~dp0\1.Windows6.1-KB3020369-x64.msu"
:64step2_1stfinished
Echo checking second file
certutil -hashfile "%~dp0\2.Windows6.1-KB3172605-x64.msu" SHA1 | findstr /i /c:"26 f4 cc 78 31 a0 d7 63 93 44 5b 7b 0a 1a 3e d5 cd 5b 40 47" > nul
IF %ERRORLEVEL% EQU 0 goto 64step2_2ndfinished
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/5/6/0/560504D4-F91A-4DEB-867F-C713F7821374/Windows6.1-KB3172605-x64.msu "%~dp0\2.Windows6.1-KB3172605-x64.msu"
:64step2_2ndfinished
Echo checking third file
certutil -hashfile "%~dp0\3.windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu" SHA1 | findstr /i /c:"2d af b1 d2 03 c8 96 42 39 af 30 48 b5 dd 4b 12 64 cd 93 b9" > nul
IF %ERRORLEVEL% EQU 0 goto 64step2_3rdfinished
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu "%~dp0\3.windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu"
:64step2_3rdfinished
Echo copying files
copy "%~dp0\1.Windows6.1-KB3020369-x64.msu" C:\Win7qUD\1st.msu
copy "%~dp0\2.Windows6.1-KB3172605-x64.msu" C:\Win7qUD\2nd.msu
copy "%~dp0\3.windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu" C:\Win7qUD\3rd.msu

:32step2
Code:
Echo checking first file
certutil -hashfile "%~dp0\1.Windows6.1-KB3020369-x86.msu" SHA1 | findstr /i /c:"82 e1 68 11 7c 23 f7 c4 79 a9 7e e9 6c 82 af 78 8d 07 45 2e" > nul
IF %ERRORLEVEL% EQU 0 goto 32step2_1stfinished
bitsadmin.exe /transfer "Downloading KB3020369 (Update 1 of 3)" https://download.microsoft.com/download/C/0/8/C0823F43-BFE9-4147-9B0A-35769CBBE6B0/Windows6.1-KB3020369-x86.msu "%~dp0\1.Windows6.1-KB3020369-x86.msu"
:32step2_1stfinished
Echo checking second file
certutil -hashfile "%~dp0\2.Windows6.1-KB3172605-x86.msu" SHA1 | findstr /i /c:"ae 03 cc bd 29 9e 43 4e a2 23 9f 1a d8 6f 16 4e 5f 4d ee da" > nul
IF %ERRORLEVEL% EQU 0 goto 32step2_2ndfinished
bitsadmin.exe /transfer "Downloading KB3172605 (Update 2 of 3)" https://download.microsoft.com/download/C/D/5/CD5DE7B2-E857-4BD4-AA9C-6B30C3E1735A/Windows6.1-KB3172605-x86.msu "%~dp0\2.Windows6.1-KB3172605-x86.msu"
:32step2_2ndfinished
Echo checking third file
certutil -hashfile "%~dp0\3.windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu" SHA1 | findstr /i /c:"ba 1f f5 53 73 12 56 17 95 cc 04 db 0b 02 fb b0 a7 4b 2c bd" > nul
IF %ERRORLEVEL% EQU 0 goto 32step2_3rdfinished
bitsadmin.exe /transfer "Downloading KB3125574 (Update 3 of 3)" http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu "%~dp0\3.windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu"
:32step2_3rdfinished
Echo copying files
copy "%~dp0\1.Windows6.1-KB3020369-x86.msu" C:\Win7qUD\1st.msu
copy "%~dp0\2.Windows6.1-KB3172605-x86.msu" C:\Win7qUD\2nd.msu
copy "%~dp0\3.windows6.1-kb3125574-v4-x86_ba1ff5537312561795cc04db0b02fbb0a74b2cbd.msu" C:\Win7qUD\3rd.msu

I actually keep the files in the root of C: instead of script directory so that people dont touch the updates if they are in a visible space. It also may prevent some issues if the script is run out of non-standard folders with odd permissions. It may not be the most effective method for sure, but I was trying to cater to both professionals and users, and keep the script working the same across multiple usage scenarios. The behavior of someone for example seeing files pop-up on their desktop can be erratic.

I also have two suggestions for improvement:

1. Add a link to this thread (preferrably the location of the last update) in your script, so that if someone stumbles upon your script, he/she can check for possible updates.

2. As step2 (download of updates) is the only one that is different between x86 and x64 architectures, you may consider making it step1 and then make the rest of the steps the same for both architectures. This will make the script shorter and easier to maintain.

I will certainly consider these changes. I also own a domain I was planning on making a space for this on. That and/or a dedicated thread here. I have more changes planned in the coming days for the script so I will consider these modifications and do a re-write if I go for it. Additionally I may make it possible in the future for the script to check for its own updates.

I appreciate the opinion.

:toast:
 
Last edited:
Just experienced this crap after installing Windows 7 on stupid ass AMD APU powered laptop to even get HW video acceleration. Left it searching for updates entire night and still nothing dafaq!?

EDIT:
2 days of waiting and still nothing. Just keeps on searching for updates and nothing.It never even starts installing the damn updates to even slowly update one by one if anything.
 
Last edited:
Updates and future support in OP of thread.
 
Last edited:
Heya, I made a new edition with a few additions. Mostly being that now I have made a home for this. So I can stop making new posts every single time which may annoy those who don't care.

You can always download the latest version here.

http://couchit.net/windows-and-long-updates/

Furthermore. The big changes to version 7 are the following

Upon request:

Addition of Windows 8
Addition of Windows Vista

Changed the layout as was suggested to me so that its a bit easier to modify. I do ask if you change or take it to just mention me somewhere for helping out.

You can always download the most recent version from the static link here

http://couchit.net/Downloads/Windows Quick Patch.bat

Your a bloody legend Solaris17 :rockout:
 
Heya, I made a new edition with a few additions. Mostly being that now I have made a home for this. So I can stop making new posts every single time which may annoy those who don't care.

You can always download the latest version here.

http://couchit.net/windows-and-long-updates/

Furthermore. The big changes to version 7 are the following

Upon request:

Addition of Windows 8
Addition of Windows Vista

Changed the layout as was suggested to me so that its a bit easier to modify. I do ask if you change or take it to just mention me somewhere for helping out.

You can always download the most recent version from the static link here

http://couchit.net/Downloads/Windows Quick Patch.bat

another addition to my software toolbox
 
Back
Top