This can be a common problem and has varying reasons that can be the cause. After recently having the problem and investigating the issue I came across numerous blog posts, articles, forum threads each making different suggestions which ended up in a very lengthy trial and error process.
This post is intended to be as conclusive as possible.
The Problem – Checking for Updates
When opening Windows Update and clicking Check for updates
the status stays on Checking for updates
and when monitoring processes in Task Manager the SVCHOST.EXE process consumes a large amount of memory and utilises between 50-100% CPU.
The Windows Update Automatic Update Service WUAUSERV is the thread of the SVCHOST.exe that consumes the CPU and Memory, when the service is stopped the memory and CPU utilisation return to normal and Windows Update stops checking for updates.
When the windows update process is left for a long period of time (several hours) the status remains unchanged, windows updates is still checking for updates and CPU and memory utilisation are also unchanged. When investigating the windowsupdate.log no recent information is written to the log file.
The Solutions
As previously mentioned there are varying reasons that can be the cause of the issue and therefore there are multiple solutions. However, there is a logical order to each solution, with the first steps being the least invasive and most likely to resolve the problem.
1. The Basics
I call this the basics, because, well, they really are the basics.
You should perform a full system scan using your anti-virus program to rule out the possibility of malware causing the problem.
Continue to step 2 before checking for updates again.
2. Download the latest update for the windows update client
This should be the first step in the troubleshooting process, especially if your windows 7 operating system is a fresh or new installation and this is the first time you are checking for windows updates.
The Windows update catalog for windows 7 is now very extensive, the increased size of the catalog has introduced some problems for the windows update client which have been addressed in updates for the client. In normal behavior the Windows Update Client will usually download updates for itself before it begins to download other updates, however, with this problem this update does not always occur.
You should always download and install the latest update to the Windows Update Client for best results.
The latest available update (June 2016) is included in the following Rollup Pack:
Below are the direct links to Microsoft’s download centre for the 32-bit and 64-bit versions of the update.
checking for installed updates
To stop windows from checking for updates, stop the WUAUSERV service using the task manager.
After successfully installing the update, run windows update again. If the status stays on “Checking for Updates” for an excessively long period of time and the CPU and memory utilisation for svchost.exe are still unusually high, continue to step 3.
3. Microsoft Fix It
Microsoft Fix It is a service Microsoft provided as a form of self-service. The tools are designed as simple wizards to resolve common problems with specific products or services.
You can use the following link to download the Microsoft Fix It tool for the windows updates service.
If you’d prefer to download the Microsoft Fix It tool from Microsoft’s website you can visit the following link:
https://support.microsoft.com/en-au/kb/971058
Once downloaded, run the tool as administrator and follow the wizard, the tool will attempt to detect and fix any issues with the Windows Update service.
After successfully running the Fix It tool, run windows updates again. If the status stays on “Checking for Updates” for an excessively long period of time and the CPU and memory utilisation for svchost.exe are still unusually high, continue to step 4.
4. Minor Reset
This is a minor reset of the Windows Update service, it removes any files that may be corrupted and causing issues with the update process. You should consider this before resorting to a full manual reset of the windows update service.
To perform a minor reset:
Run windows updates again. If the status stays on Checking for Updates
for an excessively long period of time (after a minor reset several people have reported the update check taking in excess of 8 hours) and the CPU and memory utilisation for svchost.exe are still unusually high, continue to step 5.
5. Full Windows Update Reset
This is an in-depth process and completely resets the Windows Updates components and it’s dependencies.
Microsoft has this process very well documented and you should follow the steps clearly outlined in the following knowledge base article:
https://support.microsoft.com/en-au/kb/971058
6. Repair Windows System Files
It’s possible that the Windows Update service cannot connect to Microsoft’s update services due to corrupted system files.
To repair Windows system files, you can either:
If after you have exhausted the list of solutions in this post, my final recommendation is that you consider re-installing Windows, after successfully re-installing windows, you should perform steps 1 and 2 in this post before checking for updates.
One of your solutions fixed the problem immediately for me. Many, many Thanks.
For Months I tried updating Windows and everything I tried just never Worked . But your Solution Worked immdtly ! Thank you ! Thank you !! Thank you !
Worked a charm thanks very much, been trying for ages to figure this out.
Thanks a million, been trying for ages to sort this out, step 2 did it for me.
Your step by step list is great, having all the options in one place.
Thank you for the great help resource provided. Tried so many things, but finally these solutions worked.
While trying to resolve this, on computers I was repairing, as well as newly installed Windows 7 computers, I found that the following updates fixed this issue, so far, 100% of the time.
KBs:
3172605
3138612
3102810
3020369
Prior to installing each update, you’ll need to stop the Windows update service, otherwise, it searches for updates, which then sits there, just like Windows updates.
Once installed and restarted, should now notice the SVCHOST.exe doesn’t consume 1 core’s worth of CPU resources, rather “trustedinstaller.exe” does.
I tried to install these updates but 3172605 and 3020369 both said “The update is not applicable to your computer.” Any idea why I would get this message? The other 2 that you named installed without any problem. Windows update still hangs on searching for updates and cpu usage is at 100%
Yes, I am getting same error. Solution please!!!
Your first fix before trying the MS Fixit tool worked. Finally! Thank you. I’ve tried everything to get win7 to work on new hardware