If you are trying to manage Windows Updates on a Windows 10 or Server 2016 / 2019 computer you have no doubt already figured out that WUAUCLT no longer functions.  We are not sure why Microsoft has done this because the only replacement we can find is a new undocumented tool named USOCLIENT that is built into Windows 10 and Server 2016/19 at C:\WINDOWS\SYSTEM32\USOClient.exe.

We say undocumented and mean it.  Microsoft has made no information available on this app and has gone so far as to say:

This command isn’t meant to be called outside of the internal OS. Nobody outside the OS should be trying to run the usoclient directly
SOURCE

However unless you want to use complex PowerShell or VBS scripts there is no ready way to manage Windows Update without USOClient.exe so we scoured the internet and collected this documentation.  You need to find electronic tips like this one to figure it out.

Note that we have used USOClient to manage Windows 10 Windows Updates and have had no adverse affects so we believe it is safe to make use of.

What we have found is that it will run from either a CMD prompt or a PowerShell script and it does not require elevation to do so in the environments we have tested thus far.

About the only annoying feature is that the command provides no feedback.  This means, if you have a typo or syntax error you will not see an error message.

On to the documentation.

What Is USOClient?

…First, USO stands for Update Session Orchestrator, and it’s the replaced Windows Update Agent. Windows Update service, usoclient.exe, is basically a command to run either scan for updates, install or resume updates.

…You can no longer use the old (wuauclt.exe /detectnow) commands to schedule a Windows Update scan via the command.

Windows Update settings has been moved away from the legacy Windows Control Panel to the new modern System Settings app in Windows 10.

Therefore, you won’t find any reference to usoclient.exe file listed under Control Panel > Uninstall or Change Program list.
SOURCE

What Are the USOClient Switches?

The switches are undocumented so the person that figured this out (see SOURCE below) did a fantastic job of sleuthing to find this information.

  • StartScan Used To Start Scan
  • StartDownload Used to Start Download of Patches
  • StartInstall Used to Install Downloaded Patches
    • We have found this needs to be used after ScanInstallWait
  • RefreshSettings Refresh Settings if any changes were made
  • StartInteractiveScan May ask for user input and/or open dialogues to show progress or report errors
  • RestartDevice Restart device to finish installation of updates
    • We have found this switch does nothing visible in Win10 1803
  • ScanInstallWait Combined Scan Download Install
    • We have found this kicks the PC to scan itself, check for available updates and download them… but not install them
    • We have found this command sits for about 2.5 minutes after it has apparently completed before ending and allowing the next command in any script to run
  • ResumeUpdate Resume Update Installation On Boot
    SOURCE

USOClient Syntax Examples

Unlike most utilities USOClient does not use a / or a – to send commands.  You simple append the switch, like:

USOClient.exe ScanInstallWait

USOClient StartInstall

USOClient Script To Manage Windows Updates

We have created a simple script to scan, download, install, and reboot a PC to process Windows Updates HERE.  That script is available as both a CMD line and in a PDQ script.

 


8 Comments

sebus · January 12, 2022 at 3:55 am

Cannot get it working on Server 2022, not even C:\Windows\System32\USOClient.exe StartScan

    Ian Matthews · January 19, 2022 at 8:33 pm

    Hi Sebus. I have not tried it on Server 2022 but if I get time in the lab I will make the effort and get back to you. Thanks.

tama · July 23, 2021 at 10:51 am

I think this reboots and starts a pending feature update. It’s in the task scheduler under updateOrchestrator when you schedule an update.

MusNotification ForcedRebootRetry

    Ian Matthews · July 27, 2021 at 12:30 pm

    Great detail Tama!

    Al · October 19, 2021 at 5:24 am

    Nope, it’s not working.

      Ian Matthews · October 19, 2021 at 11:49 am

      I would not be surprised if newer versions have killed some of these switches. Why MS does not provide documentation is a mystery to us and a frustration to the tech community.

WUAUClt and USOClient – SCCM PEEK · April 30, 2020 at 10:00 pm

[…] USOClient documentation – https://www.urtech.ca/2018/11/usoclient-documentation-switches/ […]

Windows 10 Update Notifications: Broken – Junknet.Net · February 26, 2020 at 3:45 pm

[…] USOCLIENT is the new command (based on the tasks the USO service creates in task scheduler), and as always there’s no official documentation on it, but you CAN find the verbiage by looking at those schedule tasks, or check out this blog post for a summary of what another person found: https://www.urtech.ca/2018/11/usoclient-documentation-switches/ […]

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *