Close

January 11, 2014

Repairing Corrupted System Files in Windows 8 and Windows 8.1

6996690148_6d10596113_h-2

I recently had an issue with a corrupted file on one of my Windows 8.1 Pro computers. When I would run the System File Checker command (sfc /scannow), which was used by other versions of Windows in the past, I would receive a message that corruption was found, but could not be repaired:

1-unable

In investigating the CBS.log file, located at C:\Windows\Logs\CBS\CBS.log, I saw entries like the following:

2014-01-11 10:41:19, Info CSI 000004c7 [SR] Beginning Verify and Repair transaction
2014-01-11 10:41:23, Info CSI 000004c8 Hashes for file member \SystemRoot\WinSxS\amd64_prncacla.inf_31bf3856ad364e35_6.3.9600.16384_none_9590ba64d5b91f79\Amd64\CNBJ2530.DPB do not match actual file [l:36{18}]"Amd64\CNBJ2530.DPB" :
Found: {l:32 b:iFGN8kqBrULckYGGWwjgESo5hfk/GDgVttoobZ/7h/o=} Expected: {l:32 b:n520k714Uu3utHa5JGQ6HQYbZphKhlMWq5pEmfnCDuw=}
2014-01-11 10:41:23, Info CSI 000004c9 [SR] Cannot repair member file [l:36{18}]"Amd64\CNBJ2530.DPB" of prncacla.inf, Version = 6.3.9600.16384, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type = [l:24{12}]"driverUpdate", TypeName neutral, PublicKey neutral in the store, hash mismatch
2014-01-11 10:41:28, Info CSI 000004ca Hashes for file member \SystemRoot\WinSxS\amd64_prncacla.inf_31bf3856ad364e35_6.3.9600.16384_none_9590ba64d5b91f79\Amd64\CNBJ2530.DPB do not match actual file [l:36{18}]"Amd64\CNBJ2530.DPB" :
Found: {l:32 b:iFGN8kqBrULckYGGWwjgESo5hfk/GDgVttoobZ/7h/o=} Expected: {l:32 b:n520k714Uu3utHa5JGQ6HQYbZphKhlMWq5pEmfnCDuw=}
2014-01-11 10:41:28, Info CSI 000004cb [SR] Cannot repair member file [l:36{18}]"Amd64\CNBJ2530.DPB" of prncacla.inf, Version = 6.3.9600.16384, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture neutral, VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type = [l:24{12}]"driverUpdate", TypeName neutral, PublicKey neutral in the store, hash mismatch
2014-01-11 10:41:28, Info CSI 000004cc [SR] This component was referenced by [l:186{93}]"Microsoft-Windows-Printer-Drivers-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.INF_prncacla"

After some additional research, I found a very useful post on the newer Deployment Imaging and Servicing Management (DISM) tool. One of the benefits of this newer command, is that it can download updated files from Windows Update, rather than relying solely on an offline cache.

I then ran the following command to use DISM to check for corruption, as well as repair any issues it found:

DISM /Online /Cleanup-Image /RestoreHealth

After running the command, it says it found corruption, and repaired the issue. I returned to the CBS.log file and saw the following:

Checking System Update Readiness.

(p) CSI Payload Corrupt (Fixed) amd64_prncacla.inf_31bf3856ad364e35_6.3.9600.16384_none_9590ba64d5b91f79\Amd64\CNBJ2530.DPB

Summary:
Operation: Detect and Repair
Operation result: 0x0
Last Successful Step: Entire operation completes.
Total Detected Corruption: 1
CBS Manifest Corruption: 0
CBS Metadata Corruption: 0
CSI Manifest Corruption: 0
CSI Metadata Corruption: 0
CSI Payload Corruption: 1
Total Repaired Corruption: 1
CBS Manifest Repaired: 0
CSI Manifest Repaired: 0
CSI Payload Repaired: 1
CSI Store Metadata refreshed: True

Total Operation Time: 655 seconds.

I was also able to see where DISM had downloaded new files through Windows Update:

2014-01-11 11:08:14, Info CBS Appl: Evaluating package applicability for package KB2878971-printscan~31bf3856ad364e35~amd64~~6.3.9600.16384, applicable state: Installed
2014-01-11 11:08:14, Info CBS REPR: WU scans package KB2878971-printscan~31bf3856ad364e35~amd64~~6.3.9600.16384 that is required by CBS
2014-01-11 11:08:14, Info CBS DWLD: PopulateDownloadFileList is called, must be express package.
2014-01-11 11:08:14, Info CBS Repr: File list: Payload amd64_prncacla.inf_31bf3856ad364e35_6.3.9600.16384_none_9590ba64d5b91f79\Amd64\CNBJ2530.DPB requested
2014-01-11 11:08:14, Info CBS Exec: (Repair) Job has been saved for package: KB2878971-printscan~31bf3856ad364e35~amd64~~6.3.9600.16384.
2014-01-11 11:08:14, Info CBS Asynchronous Session: 30346991_3064396655 finalized. [HRESULT = 0x00000000 - S_OK]
2014-01-11 11:08:14, Info CBS Session: 30346991_3071347097 initialized by client WindowsUpdateAgent.
2014-01-11 11:08:19, Info CBS Session: 30346991_3113639432 initialized by client WindowsUpdateAgent.
2014-01-11 11:08:19, Info CBS DWLD: Bundled index = 0
2014-01-11 11:08:19, Info CBS DWLD: Windows update server URL: http://download.windowsupdate.com/d/msdownload/update/software/tool/2013/08/dummyrepairpackage_cd97f5d6cb54bf63a4e4adc376edadf6f2b8352c.cab
2014-01-11 11:08:19, Info CBS DWLD:Content is Full-Cab package.
2014-01-11 11:08:19, Info CBS DWLD: Windows update server URL: http://download.windowsupdate.com/d/msdownload/update/software/tool/2013/09/kb2878971-amd64-neutral-printscan_fab8de7db6bf7a153de2ad5aa3a88a56e540e076.cab
2014-01-11 11:08:19, Info CBS DWLD:Content is Express package.
2014-01-11 11:08:19, Info CBS DWLD: Windows update server URL: http://download.windowsupdate.com/d/msdownload/update/software/tool/2013/09/kb2878971-amd64-neutral-printscan_d8f2afcbf3c0790cd01d857c1ed0972a5138983c.psf
2014-01-11 11:08:19, Info CBS DWLD:Content is Express package.
2014-01-11 11:08:19, Info CBS Repr: Finished collecting payload.
2014-01-11 11:08:19, Info CBS Repr: Finished repairing CBS Store.

When running the SFC utility a second time, it verified that there were no issues – it was fixed!

Fixed

10 Comments on “Repairing Corrupted System Files in Windows 8 and Windows 8.1

Noel Carboni
April 13, 2014 at 8:43 am

I had the same exact issue with Hashes for file member \SystemRoot\WinSxS\amd64_prncacla… not matching after application of the Spring Update to Windows 8.1, and SFC not being able to correct the problem.

Thank you for this post and for your suggestion to use DISM. It was painless and it worked perfectly.

By the way you can use the command SFC /VERIFYONLY if you’d just like to check for corruption before choosing to initiate any repairs.

venkatx5
April 13, 2014 at 4:24 pm

Awesome. It worked well.
Thanks a lot.

votapla
April 22, 2014 at 8:59 am

Thanks, helped fix the damage.
Z.Y. As for teams sfc / scannow and sfc / verifyonly, difference the only in the output information to the display. In the second case it is less detailed.

laurie
May 15, 2014 at 8:53 pm

thank you had same error and was able to fix with this

Jeroen Baert (@jbaert)
May 18, 2014 at 8:02 pm

Had the exact same problem file, and the dism command fixed it.

Chris
May 26, 2014 at 3:15 pm

Had same basic error, mine 6.3.9600.17031, current version, the single command took care of it. Many thanks! Keeping you on my list of places to check first for solutions!

Billy D.
September 24, 2014 at 1:21 am

I’m having a devil of a time getting the printer software installed on an HP Laserjet Pro m127fw printer. It works with the drivers Windows 8.1 installs, but when I try to install the printer software, I get to the point where it asks me to turn on the printer and make sure the USB cable is connected. After that, it just sits there and does nothing. No error messages. Just nothing.
I’ve run the sfc /scannow utility in an elevated prompt as well as the DISM option but the error is still there.

Robert
November 12, 2014 at 7:40 pm

The DISM /Online /Cleanup-Image /RestoreHealth worked perfectly. Solved the sfc problem I had been trying to fix for almost 2 weeks. Thanks is grossly inadequate.

Graham
April 30, 2015 at 11:44 pm

A bit late for this party, but thanks a lot of this fix. The issue is minor and not critical (CNBJ2530.DPB, etc), but solving it meant I learnt something for another day. Cheers. 🙂

Sreenivasulu Bandlamudi
May 8, 2015 at 11:58 am

Excellent Bro.I had the same issue with hashes and been trying from 10 days to fix it. Finally found this article and now it’s fixed. Thanks a Bunch 🙂

Leave a Reply

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