locked
Issues with Wusa.exe and Windows 10 Enterprise RRS feed

  • Question

  • I can silently uninstall updates using WUSA.exe on Windows 7 and 8.1, but with windows 10 WUSA.exe does not Spawn a process while using the /quiet switch. Is anyone else having the same issue?

    Here is an excerpt from event viewer:

    Windows update  could not be uninstalled because of error 2147942487 "The parameter is incorrect." (Command line: "wusa.exe  /uninstall /kb:3147458 /quiet /norestart")

    This happens on any windows 10 update.

    I have tried using

    C:\windows\system32\wusa.exe

    c:\windows\syswow64\wusa.exe

    No JOY

    Saturday, May 14, 2016 2:42 PM

Answers

  • I solved the Dism.exe issue

    Simple Powershell Script to remove updates from windows 10/8.1/8 instead of using WUSA.exe

    Does not work on Windows 7 unless Powershell is upgraded to a later version.

    $SearchUpdates = dism /online /get-packages | findstr "Package_for"

    $updates = $SearchUpdates.replace("Package Identity : ", "") | findstr "KBXXXXXXX"

    #$updates

    DISM.exe /Online /Remove-Package /PackageName:$updates /quiet /norestart

    You can do more with this script such as create and array to uninstall several updates at once if needed.

    • Marked as answer by ChrisB001 Monday, May 16, 2016 3:37 PM
    Monday, May 16, 2016 1:51 PM
  • Hi Chris,

    After my test, as you said, I meet with the same condition, I can’t uninstall kb from my Windows 10 machine either, but the wusa command executes successfully in Windows 7.

    Then, I check the following kb934307 and find out that the wusa.exe is aimed at Windows 7/8/server 2008/2008 r2 and server 2012, Windows 10 is not in list.

    https://support.microsoft.com/en-us/kb/934307

    Therefore, I think this function should be removed or changed in Windows 10, you could feedback this condition to Microsoft by built-in Feedback app, of course, I will also respond it to my organization leader.

    Regards


    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact tnmff@microsoft.com.


    Monday, May 16, 2016 3:24 AM

All replies

  • Hi Chris,

    After my test, as you said, I meet with the same condition, I can’t uninstall kb from my Windows 10 machine either, but the wusa command executes successfully in Windows 7.

    Then, I check the following kb934307 and find out that the wusa.exe is aimed at Windows 7/8/server 2008/2008 r2 and server 2012, Windows 10 is not in list.

    https://support.microsoft.com/en-us/kb/934307

    Therefore, I think this function should be removed or changed in Windows 10, you could feedback this condition to Microsoft by built-in Feedback app, of course, I will also respond it to my organization leader.

    Regards


    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact tnmff@microsoft.com.


    Monday, May 16, 2016 3:24 AM
  • Thanks Tang,

    Also there is another similar issue. Using Dism to uninstall updates does not work either

    DISM.exe /Online /Remove-Package /PackageName:"Package_for_KB3124200~31bf3856ad364e35~amd64~~10.0.1.3" /quiet /norestart

    I get the following error

    Error: 122

    The data area passed to a system call is too small.

    This happens on any update I try to remove using Dism on an online image.

    Is there an alternative method for removing Windows updates other than using WUSA.exe? We use WSUS (Approve for removal and set a deadline) but this does not seem to be a very quick alternative. Recently we had some Microsoft updates that broke our VOIP software and it would have been nice to have a script to uninstall these updates.

    Monday, May 16, 2016 12:37 PM
  • I solved the Dism.exe issue

    Simple Powershell Script to remove updates from windows 10/8.1/8 instead of using WUSA.exe

    Does not work on Windows 7 unless Powershell is upgraded to a later version.

    $SearchUpdates = dism /online /get-packages | findstr "Package_for"

    $updates = $SearchUpdates.replace("Package Identity : ", "") | findstr "KBXXXXXXX"

    #$updates

    DISM.exe /Online /Remove-Package /PackageName:$updates /quiet /norestart

    You can do more with this script such as create and array to uninstall several updates at once if needed.

    • Marked as answer by ChrisB001 Monday, May 16, 2016 3:37 PM
    Monday, May 16, 2016 1:51 PM
  • very well, glad to hear this issue has been solved by you. Thanks for sharing, I appreciate your time and efforts. Hope your experience and script will help other community members facing similar problems.

    Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact tnmff@microsoft.com.

    Tuesday, May 17, 2016 12:52 AM
  • I solved the Dism.exe issue

    Simple Powershell Script to remove updates from windows 10/8.1/8 instead of using WUSA.exe

    Does not work on Windows 7 unless Powershell is upgraded to a later version.

    $SearchUpdates = dism /online /get-packages | findstr "Package_for"

    $updates = $SearchUpdates.replace("Package Identity : ", "") | findstr "KBXXXXXXX"

    #$updates

    DISM.exe /Online /Remove-Package /PackageName:$updates /quiet /norestart

    You can do more with this script such as create and array to uninstall several updates at once if needed.

    This method no longer works since MS introduced the new method of updates i.e. 2017-05 Cumulative Update for Windows 10 Version 1607 for x64-based Systems (KB4019472)

    dism /online /get-packages doesn't return the above example, get-hotfix does return KB4019472

    https://support.microsoft.com/en-us/kb/934307 has now been updated to reflect wusa is supported on W10 however in order to use wusa to uninstall an update you need the msu file "wusa.exe D:\934307\Windows6.0-KB934307-x86.msu /uninstall /quiet /norestart" otherwise it will error with "parameter is incorrect", so example for May 17 update is 500mb x86, 1gb nearly for x64, not good sending the 500mb/1gb file to all machines just to uninstall the update.

    Friday, June 9, 2017 7:23 AM
  • Hello 

    Trying to get KB4022715 uninstalled from 33 Windows 10 machines -- are you saying that the PowerShell script above will no longer work with Windows 10?    If so, are there any more details available on how to quietly uninstall a KB update from Win10?

    Thanks

    Tuesday, July 11, 2017 6:20 AM
  • We can use dism.exe to uninstall.

    Extract the files in the msu files using the command below -

    expand -F:* <PATH_TO_MSU> <PATH_TO_FOLDER>

    The folder will have the cab file contained within the msu file

    The KB can then be uninstalled using the following command line -

    dism.exe /online /Remove-Package /PackagePath:<PATH_TO_EXTRACTED_CAB> /LogPath:<LOG_PATH> /quiet /norestart


    --------------------------------------------------------------------------------------------------------------

    Wusa.exe uninstall works if we give the msu path.

    wusa.exe /uninstall <MSU_FILE_PATH> /quiet /norestart /log:<PATH>\Logfile.evtx

    The /quiet does not work with the /KB:<KBnumber> option

    • Proposed as answer by Dilip_Nair Thursday, November 2, 2017 11:31 AM
    • Edited by Dilip_Nair Thursday, November 2, 2017 2:47 PM
    Thursday, November 2, 2017 11:20 AM
  • I solved the Dism.exe issue

    Simple Powershell Script to remove updates from windows 10/8.1/8 instead of using WUSA.exe

    Does not work on Windows 7 unless Powershell is upgraded to a later version.

    $SearchUpdates = dism /online /get-packages | findstr "Package_for"

    $updates = $SearchUpdates.replace("Package Identity : ", "") | findstr "KBXXXXXXX"

    #$updates

    DISM.exe /Online /Remove-Package /PackageName:$updates /quiet /norestart

    You can do more with this script such as create and array to uninstall several updates at once if needed.

    This method no longer works since MS introduced the new method of updates i.e. 2017-05 Cumulative Update for Windows 10 Version 1607 for x64-based Systems (KB4019472)

    dism /online /get-packages doesn't return the above example, get-hotfix does return KB4019472

    https://support.microsoft.com/en-us/kb/934307 has now been updated to reflect wusa is supported on W10 however in order to use wusa to uninstall an update you need the msu file "wusa.exe D:\934307\Windows6.0-KB934307-x86.msu /uninstall /quiet /norestart" otherwise it will error with "parameter is incorrect", so example for May 17 update is 500mb x86, 1gb nearly for x64, not good sending the 500mb/1gb file to all machines just to uninstall the update.

    We discovered the reason this PS no longer works is because Cumulative updates aren't being identified properly using the KB name any longer.    You must specify the uninstall with the OS 10 build number that the CU corresponds with (I.E. Jan 2019 CU Win 10 build for 1709 is 16299.904) to target the correct CU to remove.  No need to include the .cab file using this PS script: 
    (example removes Jan 2019 CU from 1709 device)

    $UpdateVersion = "16299.904"
    $SearchUpdates = dism /online /get-packages | findstr "Package_for"
    $updates = $SearchUpdates.replace("Package Identity : ", "") | findstr $UpdateVersion
    DISM.exe /Online /Remove-Package /PackageName:$updates /quiet /norestart
    Monday, February 4, 2019 11:11 PM