Uninstall Windows Update with PDQ Deploy

Purpose:

You wish to create a PDQ Deploy package to uninstall a specific Windows Update.

Note: This is for Windows Updates only - Not Microsoft Office Updates.

Background:

We're all aware that some Windows Updates can be less than helpful. Sometimes they cause some issues or just simply don't work. This KB will bring you through the process of creating a PDQ Deploy package that you can push out to your machines to remove specific Windows Updates when this happens.

Resolution:

Method #1 - The PowerShell way

Note: This method will work if the DISM commands are pre-installed on the OS, which is the case for Windows 8.1 / Windows Server 2012 R2 onward. additionally, some updates are considered "permanent updates" with this method and cannot be uninstalled.

1. Identify the hot fix KB number you need to remove.

2. Open PDQ Deploy and create a new package and give it a great name.

3. Create a PowerShell step with the command below and name it appropriately,

Note: Be sure to swap out "KB#######" with the KB number that you want to remove.

Get-WindowsPackage -Online | ?{$_.ReleaseType -like "*Update*"} | %{Get-WindowsPackage -Online -PackageName $_.PackageName} | ?{$_.Description -like "*KB#######*"} | Remove-WindowsPackage -Online -NoRestart

1.png

4. Consider adding a reboot step after the PowerShell step.

5. Save your beautifully crafted package and push it out to your machines to test to see if it works.

 

Method #2 - The "WUSA" way (for older versions)

Note: This method doesn't usually work on Windows 10, but does work with Windows 7/8.1 and Server 2008/2012/2012R2.

1. Identify the hot fix KB number you need to remove.

2. Open PDQ Deploy and create a new package with an appropriate name.

3. Add a command step to the package and give the step an appropriate name.

4. Add the command below to the command section but replace '#######' with your KB number.

wusa.exe /kb:####### /uninstall /quiet /norestart

5. Consider adding a "reboot" stop to your package to reboot the device after the update is uninstalled.

6. Save your beautifully crafted package and push it out to your machines to test to see if it works.

2.png

 

Method #3 - The inefficient way

Note: You have to have the .MSU file included and some of the later Windows Updates have gotten quite large (1 GB +) so this way can take more time and is less efficient. Works on all versions of Windows 10 that have been released so far (1909 was latest built at the time of writing).

1. Identify the hot fix KB number you need to remove.

2. Head over to the Microsoft Update Catalog (https://www.catalog.update.microsoft.com/Search.aspx?q=KB) and search for your update in the upper right corner.

3. Select the correct update for your system (e.g. 2020-02 Cumulative Update for Windows 10 Version 1909 for x64-based Systems (KB4532693)) and download the corresponding .msu file.

4. Copy the .MSU to your PDQ Server in the PDQ Repository.

5. To make things easier for yourself, rename the file to a friendly name.

6. Open PDQ Deploy and create a new package and give it an appropriate name.

7. Add a command step to the package and give the step an appropriate name.

8. Add the command below to the command section but replace '"KB4532693-Win10-1909-x64.msu"' with the appropriate file name.

wusa.exe "%CD%\KB4532693-Win10-1909-x64.msu" /uninstall /quiet /norestart

9. In the files section, browse to the .MSU update file that you downloaded to your PDQ Server.

10. Add "3010" as a success code to the "Success Codes" portion of the command step.

3.png

11. Consider adding a "reboot" step to your package to reboot the device after the update is uninstalled.

12. Save your beautifully crafted package and push it out to your machines to test to see if it works.

Note: Return code 3010 means that the uninstall completed successfully but the device needs a reboot.

Still have a question or want to share what you have learned? Visit our Community Discord to get help and collaborate with others.