3

I'm trying to update my Windows 7 machine using Windows Updates but I'm continually getting error 800B0100 (similar to whats reported here, here, and here). After taking several steps mentioned in those guides (system update readiness tool, check disk, Windows Update Troubeshooter, DISM, sfc, maybe something else I forgot). I've come up mostly empty-handed.

The only lead I've got comes from the DISM /Online /Cleanup-image /Scanhealth command I ran. That produced this CheckSUR.log file. Some highlights:

Checking Windows Servicing Packages

Checking Package Manifests and Catalogs
(f) CBS MUM Corrupt 0x00000000  servicing\Packages\Microsoft-Windows-IE-Hyphenation-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum       Expected file name Microsoft-Windows-IE-Hyphenation-Parent-Package-English~31bf3856ad364e35~neutral~~11.2.9412.0.mum does not match the actual file name
(f) CBS MUM Corrupt 0x00000000  servicing\Packages\Microsoft-Windows-IE-Spelling-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum      Expected file name Microsoft-Windows-IE-Spelling-Parent-Package-English~31bf3856ad364e35~neutral~~11.2.9412.0.mum does not match the actual file name
(f) CBS MUM Corrupt 0x800F0900  servicing\Packages\Package_111_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum        Line 1: 
(f) CBS Catalog Corrupt 0x800B0100  servicing\Packages\Package_111_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.cat        
(f) CBS MUM Corrupt 0x800F0900  servicing\Packages\Package_112_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum        Line 1: 

...

Checking Package Watchlist

Checking Component Watchlist

Checking Packages

Checking Component Store
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\amd64_microsoft-windows-wow64_31bf3856ad364e35_6.1.7601.23136_none_c6c193f2071b07e3.manifest   amd64_microsoft-windows-wow64_31bf3856ad364e35_6.1.7601.23136_none_c6c193f2071b07e3 
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\amd64_microsoft-windows-ncrypt-dll_31bf3856ad364e35_6.1.7601.23136_none_bc7a217a2167e4bd.manifest  amd64_microsoft-windows-ncrypt-dll_31bf3856ad364e35_6.1.7601.23136_none_bc7a217a2167e4bd    
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\amd64_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7601.23136_none_b772aa2a2bf98230.manifest   amd64_microsoft-windows-ntdll_31bf3856ad364e35_6.1.7601.23136_none_b772aa2a2bf98230 
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\amd64_microsoft-windows-smss_31bf3856ad364e35_6.1.7601.23136_none_0ad673e548fd75d4.manifest    amd64_microsoft-windows-smss_31bf3856ad364e35_6.1.7601.23136_none_0ad673e548fd75d4  
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\amd64_microsoft-windows-rpc-http_31bf3856ad364e35_6.1.7601.23136_none_fe94b8d86f1fbfc8.manifest    amd64_microsoft-windows-rpc-http_31bf3856ad364e35_6.1.7601.23136_none_fe94b8d86f1fbfc8  

...

servicing\packages\Microsoft-Windows-IE-Hyphenation-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum
    servicing\packages\Microsoft-Windows-IE-Spelling-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum
    servicing\packages\Package_111_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum
    servicing\packages\Package_111_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum
    servicing\packages\Package_112_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum
    servicing\packages\Package_112_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum
    servicing\packages\Package_113_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum
    servicing\packages\Package_113_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum
    servicing\packages\Package_114_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.mum

How can I fix this errors so the next time I run DISM I dont get them? I'm hoping that that will fix my original error (with the 800B0100 error code on Windows Update), so as an alternative if you have a fix for that I would be much more grateful.

  • The corrupted files are not the source of your inability to update Windows. You cannot use DISM on Windows 7 to repair your installation that only works on Windows 8 or above. – Ramhound Oct 20 '15 at 11:45
  • @Ramhound Perhaps I can not use DISM to repair the files, but Im pretty sure the corrupt files are still the source of my issues. – David says Reinstate Monica Oct 20 '15 at 11:48
  • The only way you can solve this is by creating your own .WIM image of a fully patched Windows 7 installation running an identical version as your current installation then running SFC against that .WIM image. But the listed corruption I still insit would not prevent Windows from updating. KB3040272 has to deal with long name catalog files. IE apparently has some slight corruption. What you have listed indicates to me while you have pretty sever system integrity corruption it isn't the cause of your inability to update currently. – Ramhound Oct 20 '15 at 11:52
  • I hope that you downloaded the System Update Readiness Tool from here, since not running the latest version may not recognize all the packages and may cause bogey error messages. In any case, the CheckSUR.log errors may not relate to your Windows Update problem - on my computer DISM finds 4 errors, but Windows Update works fine. Try first to reset Windows Update components as described here (for running the Fixit use IE). – harrymc Oct 24 '15 at 18:17
5

Intro

DISM will only repair the corrupt updates if it has access to the "good" versions of the updates in the proper subdirectory of %WINDIR%\Temp\CheckSUR\. Without those files, DISM or System Update and Readiness Tool (SURT) will only generate a listing of corrupted files encountered and will not actually perform any repairs (as you witnessed).

So, how do you go about identifying the corrupt files and then fixing them? This MS KB article does a reasonable job describing it, albeit with a few broken links and missing details, which are mostly addressed in this other MS KB. Frustratingly, some of the information conflicts with this MS technet article*(see footnote). Assuming you'd rather read about the procedure here rather than stitch together several different sources....

Steps to identify bad updates

In %WINDIR%\Logs\CBS\CheckSUR.log, generated by installing SURT or running DISM, skip to the bottom of the file and read the lines that begin with servicing\packages\Package_ in the Unavailable repair files: section. Where you see _for_KB######, KB###### (in your case KB3040272) is the update that you'll want to download. @magicandre1981 also identified KB3071756 as affecting you, presumably from a portion of your log file not directly provided in the question.

Download the non-corrupt version of packages

Once you've identified the broken KBs, you can obtain Microsoft Update MSU files at the relevant KB entry on support.microsoft.com (/kb/######) or, using IE, going to the Microsoft Update Catalog and searching for the relevant KB number. On the MS KB page, scroll down to the "Update information" section and look for a link that says "Download the package now." next to a link for your flavor of operating system (x86 = 32 bit OS; x64 = standard 64 bit; ia-64 only for high end intel 64 bit servers). Download the file.

Making update files available for DISM/SURT

After downloading the files, you can place the whole MSU as indicated below, or you can extract all mum, cat and manifest files contained and then moving the "good" version of the corrupt packages indicated by CheckSUR.log into the appropriate directory (again, as indicated below). The extraction from an msu file can be performed with the following command sequence.

expand -f:* C:\path\to\msu.msu %temp%\msuexpanded\
expand -f:* %temp\msuexpanded\Windows6.1-KBnnnnnn-xnn.cab %temp\msuexpanded\cab\

update.cat and update.mum should be renamed to the name specific to the package - for example for your broken package, you would rename the update.cat as Package_for_KB3040272~31bf3856ad364e35~amd64~~6.1.1.1.cat.

You should then move the files (msu and/or the other extensions) into place from the %temp\msuexpanded\cab\ directory*(see footnote):

File Extension | Absolute path (create if needed) | OS version confirmed (by)
-------------- | -------------------------------- | -----
msu            | %SYSTEMROOT%\CheckSUR\packages\  | Windows 7 SP1 x64 (@chadnt‡)

(see footnote for symbols)

File Extension | Subdirectory of %WINDIR%\Temp\CheckSUR\ (create if needed)
-------------- | -------
cat            | servicing\Packages\
mum            | servicing\Packages\
manifest       | winsxs\Manifests\
msu (alternate)| Packages\

Both %SYSTEMROOT% and %WINDIR% default to C:\WINDOWS

If the repairing files are in the proper directory, DISM/SURT should now repair corrupted files.

Repairing corrupted files

After KB2966583 - Improvements for the System Update Readiness tool in Windows 7 and Windows Server 2008 R2 (KB article | MSU download) has been installed, the command-line version "DISM" becomes available.

DISM becomes the command-line invokable version of CheckSUR aka System Update Readiness Tool (SURT) in Windows7, so that you don't need to "install" SURT from MS KB 947821 every time you need to check/repair corrupted MS Updates.

Usage of DISM is as follows

DISM /Online /Cleanup-Image /Scanhealth

Which must be run from an Administrator account (i.e. the Admin/elevated command-prompt or the start bar with elevated privileges).

Or you can always install SURT from KB947821 again.

After DISM or SURT has been run again, check your CheckSUR.log file again and see if it has addressed your broken packages. If it didn't work, you may wish to consider doing an Inplace Update of Windows.

Disclaimer: portions of this lifted from @magicandre1981 's response. As I added so many details, I no longer felt that a simple edit of his post was in order.

Footnotes

*Regarding directories, conflicting information is given on Microsoft's website:

  1. KB947821 (Step 4 of "How to Fix") says msu should be copied to %SYSTEMROOT%\CheckSUR\packages
  2. KB2700601 says msu, mum and cat to %WinDir%\Temp\CheckSUR\Packages\
  3. MS Technet says (after typo correction) mum and cat files go in %windir%\Temp\CheckSUR\servicing\packages

Similarly there are several locations identified as the appropriate directory for manifest files

† @mpag
‡ @chadnt

| improve this answer | |
  • I initially placed my msu in the %WinDir%\Temp\CheckSUR\Packages folder but it was not used. Moving it to %SYSTEMROOT%\CheckSUR\packages folder worked. – chadnt Jun 12 '17 at 20:09
  • @chadnt it seems that KB947821 was most accurate then, at least for you. Could you comment on which operating system (and 32 vs 64-bit) you use? – mpag Jun 12 '17 at 22:32
  • I had success placing the msu file in %SYSTEMROOT%\CheckSUR\packages per KB947821 for a repair on Windows 7 SP1 64-bit. – chadnt Jun 13 '17 at 12:06
0

try to install the update KB2966583:

Improvements for the System Update Readiness tool in Windows 7 and Windows Server 2008 R2
http://support.microsoft.com/kb/2966583/en-us

It should now allow you to run this DISM command to repair corrupted files:

DISM /Online /Cleanup-Image /Scanhealth

(I never tried if this really works. Please try it and report back)

If this doesn't work, do the following. Because files of the Updates KB3040272 and KB3071756 are damaged, download the MSU files from the downloadcenter, put them into the folder %SYSTEMROOT%\CheckSUR\packages and run the checksur tool KB947821 again.

if this still doesn't fix your issue, repair your Windows via Inplace Update.

| improve this answer | |
  • It says I already have this installed. – David says Reinstate Monica Oct 20 '15 at 4:09
  • now try to run the DISM command and see what happens. – magicandre1981 Oct 20 '15 at 4:13
  • 1
    Generated the same log file with errors. Perhaps you mean the DISM command with /RestoreHealth or something? If so, it doesn't work on Windows 7 I believe (only win8+ or something like that). – David says Reinstate Monica Oct 20 '15 at 4:17
  • Afaik the /RestoreHealth parameter was not backported, only the Scanhealth which should do the repair. I see that files of the Updates KB3040272, KB3071756 are damaged. Point checksur to use the CAB/MSU of the update by coping the MSU/CABs to %windir%\Temp\CheckSUR\servicing\packages and run checksur again. – magicandre1981 Oct 20 '15 at 4:28
  • 2
    after downloading the MSU files from Download center and placing them in the folder %SYSTEMROOT%\CheckSUR\packages run the normal checksur tool from KB947821. – magicandre1981 Oct 20 '15 at 15:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.