→
BatchUpdateUninstallerv5.2.5.zip 141k .zip file
←
Published March 16th, 2016
How to use:
- Run BatchUpdateUninstaller.cmd
- Type 1 and confirm.
- When the script completes, reboot. That's it!
Recommendations:
- It's highly recommended to set Windows Update to check for updates without downloading or installing, then uncheck Optional, and Microsoft Product updates.
- To fully disable the remaining telemetry and CEIP that comes with Windows 7, 8.1, and 10, you can use Spybot Anti-Beacon.
- Duplicate pending or old device updates can easily be removed. Here's my guide for using Device Remover.
- Having issues with windows update? For Windows 8 users and above, Run Dism /Online /Cleanup-Image /RestoreHealth, then sfc /scannow until no errors are reported or up to three times, whichever comes first. Windows 7 does not use Dism commands, so use the System Update Readiness tool instead, then sfc /scannow. That solves whatever the problem may be the the majority of cases.
- Our recommended text editor is Notepad++!
- Want to view and manage the network traffic of all running processes? Check out NetLimiter!
Known issues:
- Some updates such as KB2976978 are baked into different versions of Windows, and cannot be removed. KB2976978 cannot be removed from Windows 8 & 8.1.
- Running Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase will make any currently installed updates permanently unable to be uninstalled.
- I have insomnia and sometimes am too tired to update BUU when a new update needs blocking.
Current KB uninstall list:
Code:
Code:
To change what updates are uninstalled, you can add or remove KB IDs. One KB ID per line is all that is required for the script to function. Do not remove this line of text.
971033 - https://support.microsoft.com/en-us/kb/971033 - [Common Bug/Error/BSOD] [Win7] - Causes Windows to deactivate legitimate licences under certain circumstances.
2454826 - https://support.microsoft.com/en-us/kb/2454826 - [Common Bug/Error/BSOD] [Win7/Server 2008R2] - Claims to improve graphic performance, yet often causes crashes and BSODs.
2505438 - https://support.microsoft.com/en-us/kb/2505438 - [Common Bug/Error/BSOD] [Win7/Server 2008R2] - Claims to fix performance issues, yet often breaks fonts.
2882822 - https://support.microsoft.com/en-us/kb/2882822 - [Telemetry] [Win7SP1/Server 2008R2SP1] - Adds ITraceRelogger interface support.
2902907 - UPDATE REMOVED BY MS https://bit.ly/1MftRyG - [MS Pulled] [Unknown] - KB ID previously used as a buggy WinXP MSE installer. Associated with telemetry updates, unanimously uninstalled.
2922324 - UPDATE REMOVED BY MS NO SOURCE AVAILABLE - [MS Pulled] [Win7/8.1?] - Installed alongside telemetry updates. Pulled by MS.
2952664 - https://support.microsoft.com/en-us/kb/2952664 - [Get Win10] [Win7SP1] - Ease upgrade experience to the latest version of Windows.
2976978 - https://support.microsoft.com/en-us/kb/2976978 - [Telemetry] [Win8/8.1] - CEIP diagnostics and telemetry.
2976987 - UPDATE REMOVED BY MS NO SOURCE AVAILABLE - [Get Win10] [Win7SP1/8.1] Update related to the 3035583 Get Windows X program.
2977759 - https://support.microsoft.com/en-us/kb/2977759 - [Telemetry] [Win7] - CEIP diagnostics and telemetry.
2990214 - https://support.microsoft.com/en-us/kb/2990214 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Enables you to upgrade to a later version of Windows.
2999226 - https://support.microsoft.com/en-us/kb/2999226 - [Unknown ] [Win7SP1/8.1/Server 2008R2SP1/Server 2012R2] - Enables Win10 universal CRT on earlier versions of windows.
3012973 - UPDATE REMOVED BY MS https://bit.ly/1X8u9K4 - [Get Win10] [Win7SP1/8.1] - Installs Get Windows X program.
3014460 - UPDATE REMOVED BY MS https://bit.ly/1LR8BJS - [Get Win10] [Win7SP1/Server 2008R2SP1] - Enables you to upgrade to a later version of Windows.
3015249 - UPDATE REMOVED BY MS NO SOURCE AVAILABLE - [Telemetry] [Win7SP1/8.1/Server 2008R2SP1/Server 2012R2] - Adds telemetry points to consent.exe and UAC.
3021917 - https://support.microsoft.com/en-us/kb/3021917 - [Telemetry] [Win7SP1] - CEIP diagnostics and telemetry.
3022345 - https://support.microsoft.com/en-us/kb/3022345 - [Telemetry] [Win7SP1/8.1/Server 2012R2] Installs CEIP diagnostics and telemetry. Replaced by KB3068708.
3035583 - https://support.microsoft.com/en-us/kb/3035583 - [Get Win10] [Win7SP1/8.1] - Installs Get Windows X program. Creates UAC backdoor.
3042058 - https://support.microsoft.com/en-us/kb/3042058 - [Telemetry] [Win7SP1/8.1/Server 2008R2SP1/Server 2012R2] - Updates cipher suite priority order. Contains Windows logon spying elements.
3044374 - https://support.microsoft.com/en-us/kb/3044374 - [Get Win10] [Win8.1/Server 2012R2] - Enables you to upgrade to Win10.
3046480 - https://support.microsoft.com/en-us/kb/3046480 - [Telemetry] [Win7SP1/8.1/Server 2008R2SP1/Server 2012R2] - Determines whether to migrate .NET 1.1 with upgrades to a later version of Windows.
3050265 - https://support.microsoft.com/en-us/kb/3050265 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to support upgrades to a later version of Windows.
3050267 - https://support.microsoft.com/en-us/kb/3050267 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to support upgrades to a later version of Windows.
3058168 - https://support.microsoft.com/en-us/kb/3058168 - [Get Win10] [Win8.1/Server 2012R2] - Enables KMS hosts to activate Win10.
3065987 - https://support.microsoft.com/en-us/kb/3065987 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. July 2015.
3064683 - https://support.microsoft.com/en-us/kb/3064683 - [Get Win10] [Win8.1] - Windows 8.1 OOBE modifications to reserve Windows 10.
3065988 - https://support.microsoft.com/en-us/kb/3065988 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client July 2015.
3068708 - https://support.microsoft.com/en-us/kb/3068708 - [Telemetry] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Installs CEIP diagnostics and telemetry.
3072318 - https://support.microsoft.com/en-us/kb/3072318 - [Get Win10] [Win8.1] - Windows 8.1 OOBE modifications to reserve Windows 10.
3074677 - https://support.microsoft.com/en-us/kb/3074677 - [Get Win10] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Compatibility update for upgrading to Windows 10. June 25th, 2015.
3075249 - https://support.microsoft.com/en-us/kb/3075249 - [Telemetry] [Win7SP1/8.1/Server 2008R2SP1/Server 2012R2] - Adds telemetry points to consent.exe and UAC.
3075851 - https://support.microsoft.com/en-us/kb/3075851 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. August 2015
3075853 - https://support.microsoft.com/en-us/kb/3075853 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client. August 2015.
3080149 - https://support.microsoft.com/en-us/kb/3080149 - [Telemetry] [Win7SP1/8.1/Server 2008R2SP1/Server 2012R2] - Updates CEIP diagnostics and telemetry match Win10.
3081437 - https://support.microsoft.com/en-us/kb/3081437 - [Get Win10] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Compatibility update for upgrading to Windows 10. August 18, 2015.
3081454 - https://support.microsoft.com/en-us/kb/3081454 - [Get Win10] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Compatibility update for upgrading to Windows 10. September 8, 2015.
3081954 - https://support.microsoft.com/en-us/kb/3081954 - [Telemetry] [Win7SP1] - Update for Work Folders improvements in Windows 7 SP1. Contains telemetry elements.
3086255 - https://support.microsoft.com/en-us/kb/3086255 - [Common Bug/Error/BSOD] [Win7SP1/Server 2008R2SP1/Win8.1/Server 2012R2] - Security update for the graphics component in Windows. Breaks SafeDisk.
3088195 - https://support.microsoft.com/en-us/kb/3088195 - [Telemetry] [Win7SP1/Server 2008R2SP1/Win8.1/Server 2012R2] - Security update for Windows Kernel. Reported to contain keylogger.
3083324 - https://support.microsoft.com/en-us/kb/3083324 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. September 2015.
3083325 - https://support.microsoft.com/en-us/kb/3083325 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client. September 2015.
3083710 - https://support.microsoft.com/en-us/kb/3083710 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. October 2015.
3083711 - https://support.microsoft.com/en-us/kb/3083711 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client. October 2015.
3090045 - https://support.microsoft.com/en-us/kb/3090045 - [Get Win10] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Windows Update for reserved devices.
3093983 - https://support.microsoft.com/en-us/kb/3093983 - [Get Win10] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Security update for Internet Explorer. IE spying.
3102810 - https://support.microsoft.com/en-us/kb/3102810 - [Get Win10] [Win7/Server 2008R2SP1] - High CPU usage occurs when installing and searching for updates. Windows 10 upgrade elements.
3102812 - https://support.microsoft.com/en-us/kb/3102812 - [Get Win10] [Win8.1/Server 2012R2] - High CPU usage occurs when installing and searching for updates. Windows 10 upgrade elements.
3112336 - https://support.microsoft.com/en-us/kb/3112336 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client. December 2015.
3112343 - https://support.microsoft.com/en-us/kb/3112343 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. December 2015.
3123862 - https://support.microsoft.com/en-us/kb/3123862 - [Get Win10] [Win7SP1/8.1] - Updated capabilities to upgrade Windows 8.1 and Windows 7.
3135445 - https://support.microsoft.com/en-us/kb/3135445 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. February 2016.
3135449 - https://support.microsoft.com/en-us/kb/3135449 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client. February 2016.
3138612 - https://support.microsoft.com/en-us/kb/3138612 - [Get Win10] [Win7SP1/Server 2008R2SP1] - Improvements to Windows Update Client. March 2016.
3138615 - https://support.microsoft.com/en-us/kb/3138615 - [Get Win10] [Win8.1/Server 2012R2] - Improvements to Windows Update Client. March 2016.
3139929 - https://support.microsoft.com/en-us/kb/3139929 - [Get Win10] [Win7/8.1/Server 2008R2SP1/Server 2012R2] - Security update for Internet Explorer. Implements Windows 10 ad generator into IE VIA bundled update KB3146449.
I'm trying to uninstall and hide some windows updates using the method shown here: https://superuser.com/questions/922068/how-to-disable-the-get-windows-10-icon-shown-in-the-notification-area-tray/922921#922921
Except I want it to include this list of updates: [isleaked.com is down for good] https://fix10.isleaked.com/oldwindows.html (Note: KB2990214 is listed twice under different OS versions).
I'm not a programmer. I know almost nothing of programming or code, except that it can be so amazingly complicated. Mad respect to those who dedicate their lives to this stuff. I couldn't do it.
I'll copy the whole post (minus one small typo) in case there is link rot in the future.
Quote:
Code:
And here is my HideWindowsUpdates.vbs I have no idea how the syntax works here. It's too much to deduce with no experience by just looking at it.
The problem is I don't know what to do about the bit with "Example1 and Example2". What do I rename the examples? I deleted the lines since they were examples but that caused an unexpected end of file error. Was I supposed to keep the [KB1 [KB2] and continue on for the number of KB's I'm listing And instead use example 2 to list them? It's probably something simple, I just don't know the syntax.
Code:
EDIT: Now with more colors!
Except I want it to include this list of updates: [isleaked.com is down for good] https://fix10.isleaked.com/oldwindows.html (Note: KB2990214 is listed twice under different OS versions).
I'm not a programmer. I know almost nothing of programming or code, except that it can be so amazingly complicated. Mad respect to those who dedicate their lives to this stuff. I couldn't do it.
I'll copy the whole post (minus one small typo) in case there is link rot in the future.
Quote:
Ok so here is my bat file which I have renamed Remove WU Spyware:
Code:
Code:
ECHO OFF
REM --- remember to invoke from ELEVATED command prompt!
REM --- or start the batch with context menu "run as admin".
SETLOCAL
REM --- (as of 2015-09-06):
REM KB2976978 - Telemetry for Win8/8.1
REM KB3075249 - Telemetry for Win7/8.1
REM KB3080149 - Telemetry for Win7/8.1
REM KB3021917 - Telemetry for Win7
REM KB3022345 - Telemetry
REM KB3068708 - Telemetry
REM KB3044374 - Get Windows 10 for Win8.1
REM KB3035583 - Get Windows 10 for Win7sp1/8.1
REM KB2990214 - Get Windows 10 for Win7
REM KB2952664 - Get Windows 10 assistant
REM KB3075853 - Update for "Windows Update" on Win8.1/Server 2012R2
REM KB3065987 - Update for "Windows Update" on Win7/Server 2008R2
REM KB3050265 - Update for "Windows Update" on Win7
REM KB3075851 - Update for "Windows Update" on Win7
REM KB2902907 - Description is not available
REM --- uninstall updates
echo uninstalling updates ...
start "title" /b /wait wusa.exe /kb:2976978 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3075249 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3080149 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3021917 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3022345 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3068708 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3044374 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3035583 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:2990214 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:2952664 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3075853 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3065987 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:3050265 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:971033 /uninstall /quiet /norestart
echo - next
start "title" /b /wait wusa.exe /kb:2902907 /uninstall /quiet /norestart
echo - done.
timeout 10
REM --- hide updates
echo hiding updates ...
start "title" /b /wait cscript.exe "%~dp0HideWindowsUpdates.vbs" 2976978 3075249 3080149 3021917 3022345 3068708 3044374 3035583 2990214 2952664 3075853 3065987 3050265 971033 2902907
echo - done.
echo ... COMPLETED (please remember to REBOOT windows, now)
pause
REM --- EOF
The problem is I don't know what to do about the bit with "Example1 and Example2". What do I rename the examples? I deleted the lines since they were examples but that caused an unexpected end of file error. Was I supposed to keep the [KB1 [KB2] and continue on for the number of KB's I'm listing And instead use example 2 to list them? It's probably something simple, I just don't know the syntax.
Code:
Code:
// Inspired by Colin Bowern: http://serverfault.com/a/341318
If Wscript.Arguments.Count < 1 Then
WScript.Echo "Syntax: HideWindowsUpdates.vbs [KB2976978] [KB3075249] [KB3080149] [KB3021917] [KB3022345] [KB3068708] [KB3044374] [KB3035583] [KB2990214] [KB2952664] [KB3075853] [KB3065987] [KB3050265] [KB3075851] [KB2902907] ..." & vbCRLF & _
" - Example1: HideWindowsUpdates.vbs 3035583" & vbCRLF & _
" - Example2: HideWindowsUpdates.vbs 3035583 3012973"
WScript.Quit 1
End If
Dim objArgs
Set objArgs = Wscript.Arguments
Dim updateSession, updateSearcher
Set updateSession = CreateObject("Microsoft.Update.Session")
Set updateSearcher = updateSession.CreateUpdateSearcher()
Wscript.Stdout.Write "Searching for pending updates..."
Dim searchResult
Set searchResult = updateSearcher.Search("IsInstalled=0")
Dim update, kbArticleId, index, index2
WScript.Echo CStr(searchResult.Updates.Count) & " found."
For index = 0 To searchResult.Updates.Count - 1
Set update = searchResult.Updates.Item(index)
For index2 = 0 To update.KBArticleIDs.Count - 1
kbArticleId = update.KBArticleIDs(index2)
For Each hotfixId in objArgs
If kbArticleId = hotfixId Then
If update.IsHidden = False Then
WScript.Echo "Hiding update: " & update.Title
update.IsHidden = True
Else
WScript.Echo "Already hidden: " & update.Title
End If
End If
Next
Next
Next
// EOF