This is a little script to disable (block) automatic Windows updates on Windows 10 or Windows 11. Unlike other methods, the goal is to leave you with the ability to manually update whenever you want later on, and not when the system decides it's time to do so, even rebooting your computer while you're logged in with open (and unsaved) apps. Windows 11 got even more forceful with its automatic updates.
Note that for safety and system stability, there is no permission changing with any registry keys or files, there is no file deletion or any other destructive (irreversible) action. These extra protective measures can quickly cause unexpected issues or anomalies in day-to-day, stable functionality, so only safe actions are allowed that can be reverted anytime. (While other tweaking tools or scripts may "nuke" or "cripple" your system, forcing you for a backup or system restore, cloning.)
You have two options of doing this:
The least risky and safer option (without disabling system-related stuff) is to simply run PauseUpdates-enable.ps1
, which will pause the updates for a long time. That should prevent their automatic installation, so long as the pause is active. To turn it off, you can use the other script, PauseUpdates-disable.ps1
. Make sure you have the correct execution policy set for these PowerShell scripts to be able to run.
If pausing and unpausing constantly is not your thing (it can get tedious fast), the other option requires the SYSTEM user to be able to disable certain scheduled tasks, which is why an additional app, called AdvancedRun is needed. So rather than running the PowerShell scripts as an administrator (which will not be able to disable those scheduled tasks), run the batch file: either WinUpdate-Off.bat
to disable the automatic updates or WinUpdate-On.bat
to restore the changes.
Please open either a PowerShell or a CMD (Command Prompt) window as admin and run the batch files from there, since if you do it from the right-click context menu, it is not going not work or proceed with the commands as expected (and nothing will happen).
Will the second method be enough to keep it from resetting these changes and revert to automatic updates? No, no guarantee. Things may change in later updates/upgrades. If you want to make sure, it is advised to re-run the script from the batch file periodically for this reason (especially after cumulative or major updates). This also disables automatic Microsoft Store updates and automatic device driver updates.
If you want the easiest option, StopUpdates10 is what you're looking for. However that app will disable Windows Update completely, while my script doesn't do so, letting you manually update. And unlike an app, a script can also be easily changed later on, even if the author abandons the project. The scripts here basically do a very similar thing, as far as the end result is concerned, but without any active protection or active guard staying in place.