none
WUAUCLT.exe vs. Check for Updates RRS feed

  • Question

  • I'm trying to find the difference between running WUAUCLT.exe /detectnow and going into Windows Update and selecting "Check for Updates".  When doing the wuauclt command I get the following error:

    Windows Update Client failed to detect with error 0x80072ee2.

    But when going into Windows Update and selecting Check for updates, things work.

    We don't want to have to manually check for updates so maybe understanding what the difference between the two is will help determine where the issue is.

    Also to note I've already used PSExec to change the IE proxy settings to be what they need to be for the IE with the "System" account.

    Thanks,

    Craig

    Friday, February 9, 2018 4:47 PM

All replies

  • The wuauclt.exe file is located in the folder C:\Windows\System32
    It Automatically checks with the Microsoft website for updates to the operating system. It shows up on the Task Manager's processes list when it is waiting for a response, such as to confirm permission to download an update.

    Please Follow up WSUS troubleshooting guide in below url. Then You will be able to fix and learn WSUS functionality..

    https://gallery.technet.microsoft.com/office/Troubleshooting-WSUS-d63da113

    If you using Windows OS which were installed from Ghost image or clone methods, you have to delete WSUS client GUID from those client PCs as below,

    b. Delete the SUSclientID reg key
    HKLM\Software\Microsoft\Windows\CurrentVersion\WindowsUpdate
    c. Restart the automatic service 
    d. Run wuauclt /resetauthorization /detectnow 
    e. Run wuauclt /reportnow

    • Proposed as answer by Edi Katekan Monday, May 28, 2018 6:20 PM
    • Unproposed as answer by Edi Katekan Monday, May 28, 2018 6:21 PM
    • Proposed as answer by Bilis518 Thursday, November 22, 2018 9:42 AM
    • Unproposed as answer by Bilis518 Thursday, November 22, 2018 9:42 AM
    Friday, February 9, 2018 11:22 PM
  • If this is on Windows 10, wuauclt /detectnow has been deprecated and no longer functions. you must use powershell to do this.

    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()

    A more comprehensive Client side script is (Run from an admin CMD Prompt):

    net stop bits
    net stop wuauserv
    reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v AccountDomainSid /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v PingID /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientId /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientIDValidation /f
    rd /s /q "C:\WINDOWS\SoftwareDistribution"
    net start bits
    net start wuauserv
    wuauclt /resetauthorization /detectnow
    PowerShell.exe (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()

    As far as the difference, there shouldn't be any (unless it's on Windows 10, ergo the powershell command is the difference)

    The location that each of these commands look for (wuauclt vs the 'check for updates' link vs the powershell command) the location of the WSUS Server and the alternative WSUS Server (if you don't see this, you need to update your ADMX files). If they don't find this set of settings, they look at Microsoft's Windows Update servers online.


    Adam Marshall, MCSE: Security
    http://www.adamj.org
    Microsoft MVP - Windows and Devices for IT

    Saturday, February 10, 2018 6:46 PM
  • Some things to clarify.  The clients I'm working with are servers (2008R2, 2012R2, and 2016) and there is no WSUS in this scenario, they are just trying to get to Microsoft to get their updates.  Check for updates works, but wuauclt.exe doesn't.
    Monday, February 12, 2018 3:22 PM
  • How are you say it's not working...

    Please refer below for Win 10,

    wuauclt.exe /detectnow command is actually forcing an update detection. If there are updates approved for install that client needs, it ill download them when the command run.

     

    Please follow the below methods and check if it helps.

    1. Open Windows Update by swiping in from the right edge of the screen (or, if you're using a mouse, pointing to the lower-right corner of the screen and moving the mouse pointer up), tapping or clicking Settings, tapping or clicking Change PC settings, and then tapping or clicking Update and recovery.
    2. Tap or click Choose how updates get installed.
    3. Under Important updates, choose the option that you want.
    4. Under Recommended updates, select the Give me recommended updates the same way I receive important updates check box.
    5. Under Microsoft Update, select the Give me updates for other Microsoft products when I update Windows check box, and then tap or click Apply

     

    Once automatic updates are enabled, launch Command Prompt in Administrator mode and enter the following command: wuauclt.exe/detectnow. That should trigger the Windows 10 download. Check if it helps.

    Monday, February 12, 2018 3:55 PM
  • As Additionally, 

    Check these, these may be helpful for you because this article relevant with wauclt in Win10/Win2016,

    1. Open a Command Prompt with Administrator privileges.
    2. Type in usoclient StartScan
    3. You will see that Windows Update in Settings.exe will start refreshing as below -

    https://omgdebugging.com/2017/10/09/command-line-equivalent-of-wuauclt-in-windows-10-windows-server-2016/

    Monday, February 12, 2018 3:59 PM
  • This is exactly what I was looking for, thanks!

    From PowerShell:

    Get-Service -name winrm -ComputerName "REMOTE COMPUTER" | set-service -status running
    enter-pssession -computername "REMOTE COMPUTER"
    usoclient ScanInstallWait

    Monday, May 14, 2018 4:33 PM
  • I ended up doing this, which works great if winrm is configured on your clients.

    #Install Pending Updates on Windows 10 computers
    #Created 2018/09/05
    
    #List of Computers
    $Computers = Get-Content "C:\folder\computerlist.txt"
    
    Write-Host "Running Command" -ForegroundColor Green
    Foreach ($Computer in $Computers)
    {
        Write-Host $Computer
        Invoke-Command -ComputerName $Computer -ScriptBlock{C:\Windows\system32\usoclient startinstall}
    }


    Wednesday, September 5, 2018 4:14 PM