How to Hide or Block a Specific Windows Update: A Step-by-Step Guide

Sometimes, after installing a Windows update, users may face issues such as the operating system, specific programs, or drivers malfunctioning. In such cases, it is necessary to uninstall the troublesome update and prevent its reinstallation. This guide outlines how to temporarily pause updates and block unwanted updates from the Windows Update service.

Using the Microsoft Show and Hide Updates Tool

If an unwanted update has already been installed, it can be uninstalled by navigating to SettingsWindows UpdateView Update HistoryUninstall updates. Simply click on the update in the list and select Uninstall.

For users who prefer using the command line, the PowerShell command can be employed to remove the update sorted by installation date:

Get-HotFix | Sort-Object -Property InstalledOn -Descending

Identify the update number (KBxxxxx) and uninstall it using:

wusa /uninstall /kb:5048161

However, Windows Update may automatically try to reinstall the update you’ve just removed, depending on the settings overridden by the Windows Update Group Policy.

To completely block a specific update, utilize the Microsoft ‘Show or Hide Updates’ tool (wushowhide.diagcab):

  1. Download the Show or hide utility from the Microsoft website.
  2. Run wushowhide.diagcab.
  3. Select Hide updates.
  4. Choose the update(s) you wish to hide.

After hiding updates, they will not reappear for installation unless you unhide them using the same tool.

If you have a WSUS Update Server installed, you can leverage the Approved for Removal option to block and even automatically uninstall certain updates across connected systems. Check the article Approving Updates on WSUS for further instructions.

Temporarily Pause Updates in Windows

Windows 10 and 11 permit users to pause updates for up to 35 days, a useful option when known bugs are identified in released updates.

To pause updates for 7 days, choose the Pause updates for 7 more days option in SettingsWindows Updates. This function can be utilized five times, extending the total pause period to 35 days.

To check when the update pauses will expire, the following PowerShell command can be utilized:

Get-ItemProperty -Path 'HKLM:SOFTWAREMicrosoftWindowsUpdateUXSettings'| Select-Object PauseUpdatesExpiryTime

To set the maximum pause duration via a PowerShell script:

$pause = (Get-Date).AddDays(35)$pause = $pause.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssZ")Set-ItemProperty -Path 'HKLM:SOFTWAREMicrosoftWindowsUpdateUXSettings' -Name 'PauseUpdatesExpiryTime' -Value $pause

Block Installation of Specific Windows Updates Using PowerShell

To effectively block a specific update, the PowerShell cmdlets available through the PSWindowsUpdate module should be utilized.

If not already installed, execute the following command to install the module:

Install-Module -Name PSWindowsUpdate

After restarting PowerShell, allow the module cmdlets to execute in the current session:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process

To see available updates for installation, use:

Get-WindowsUpdate

To block a specific update, run:

Hide-WindowsUpdate -KBArticleID KB5048652 -Verbose

Hidden updates won’t appear in the list of available updates. To view hidden updates, execute:

Get-WindowsUpdate -IsHidden

To unhide updates and enable their installation, run:

Show-WindowsUpdate -KBArticleID KB5048652

Users often seek to block particular driver updates as well. If Get-WindowsUpdate shows that driver updates are missing a KB number, the driver can be blocked based on its ID:

$Updates = Get-WindowsUpdate -WindowsUpdate -UpdateType Driver$Updates | Select Title, Description -Expand IdentityHide-WindowsUpdate -UpdateID "3f6ba9a7-b031-4990-808f-69a9e1ef6a91"

Posted

in

, ,

by

Tags: