During a recent Windows 11 migration project for a customer, I encountered some challenges using Intune (WUfB) to upgrade devices. As part of my troubleshooting efforts (collecting the windows device logs), mostly conducted remotely, I encountered an unexpected issue with the traditional Windows Update command-line tool, WUAUCLT.exe, which was no longer effective on Windows 10 and later versions.
After looking into the issue, I discovered that WUAUCLT.exe has been replaced by USOClient.exe (Update Session Orchestrator Client). This newer tool serves to force scans, downloads, and installations of updates, essential for effective troubleshooting.
For instance, I utilized the command-line switch USOClient.exe StartInteractiveScan
to initiate update scans remotely. Despite its “interactive” label, this command operates silently without user prompts, making it suitable for integration into SCCM scripts that helps to run the command remotely.
Post the successful completion of “USOClient.exe StartInteractiveScan
“ on a device, the device will start the scan and adhere to your WUfB settings for download, install and restart of the applicable patches as shown below.
![](https://i0.wp.com/eskonr.com/wp-content/uploads/2024/07/image-17.png?w=788&ssl=1)
![](https://i0.wp.com/eskonr.com/wp-content/uploads/2024/07/image-18.png?w=788&ssl=1)
Understanding WUAUCLT.exe and USOClient.exe
Previously, WUAUCLT.exe (Windows Update AutoUpdate Client) was pivotal in managing and controlling Windows Update services on older Windows systems like Windows 7 and Server 2012. It handled tasks such as checking for updates, downloading them from Microsoft servers, and installing them to keep devices current.
With Windows 10 and later OS (Server 2016 and later), WUAUCLT.exe functionality is replaced by USOClient.exe (Update Session Orchestrator Client), located in C:\windows\System32
. USOClient.exe oversees Windows Update sessions, encompassing tasks from update checks to download and installation management.
How USOClient.exe basically operates
- Checking for Updates: USOClient.exe verifies update availability and communicates with the update server to identify necessary updates, including major feature updates.
- Downloading Updates: It downloads updates in optimized chunks to minimize bandwidth impact and improve device performance.
- Preparing Updates: After download, USOClient.exe verifies update integrity, decompresses files, and readies them for installation.
- Installing Updates: Updates are installed automatically or after user-restart prompts, ensuring device compatibility and optimizing performance configurations.
- Reporting Update Status: Upon completion, USOClient.exe reports update outcomes to the server, detailing successful, failed, or pending installations.
Scheduled Tasks and Switches
Windows Update scans are managed via USOClient.exe through scheduled tasks under \Microsoft\Windows\UpdateOrchestrator
. The primary task, “Schedule Scan,” operates every 22 hours by default using the switch %systemroot%\system32\usoclient.exe StartScan
.
![](https://i0.wp.com/eskonr.com/wp-content/uploads/2024/07/image-19.png?w=788&ssl=1)
![](https://i0.wp.com/eskonr.com/wp-content/uploads/2024/07/image-20.png?w=788&ssl=1)
There are other schedule tasks such as “Schedule Scan Static Task” that initiates the scan based on different factors such as event ID 8202.
![](https://i0.wp.com/eskonr.com/wp-content/uploads/2024/07/image-21.png?w=788&ssl=1)
Here’s a table summarizing essential switches for USOClient.exe:
Sl No | Switch | Purpose | Usage |
1 | StartScan | Initiates a scan for available updates. | USOClient.exe StartScan |
2 | StartDownload | Initiates the download of available updates. | USOClient.exe StartDownload |
3 | StartInstall | Initiates the installation of downloaded updates | USOClient.exe StartInstall |
4 | RefreshSettings | Refreshes the update settings | USOClient.exe RefreshSettings |
5 | RestartDevice | Restarts the device to complete the installation of updates that require a restart. | USOClient.exe RestartDevice |
6 | ScanInstallWait | Initiates a scan for updates, downloads them, installs them, and waits for the process to complete. | USOClient.exe ScanInstallWait |
7 | ResumeUpdate | Resumes an update installation that was paused or interrupted | USOClient.exe ResumeUpdate |
8 | EvaluateUpdate | Forces the system to re-evaluate updates. | USOClient.exe EvaluateUpdate |
9 | StartInteractiveScan | Initiates an interactive scan for updates | USOClient.exe StartInteractiveScan |
For windows update log collector, you can run logcollector.exe tool available at https://t.co/RgBuQpKOCM
For more interesting fun facts about Window Update for Business, please read https://eskonr.com/2023/12/navigating-the-windows-update-for-business-wufb-maze-unveiling-fun-facts/