Windows Update Error Code 80070246

ske

Member
Joined
Aug 28, 2016
Posts
5
I've been having trouble with Code 80070246 for a couple of years when trying to install some windows updates.

I currently get this code every time I try to install "Cumulative Security Update for Internet Explorer 9" KB3124275, and Windows 7 Security Update KB3022777, and optional Windows 7 Update KB3179573.

When trying to install Internet Explorer 11 it also fails with Code 9C59, which I think originates from the same problem causing code 80070246 for the other updates.

Over the years, I've been searching for solutions and have checked out all suggestion I have found to the best of my ability, but I'm always left with this problem remaining.

I've run CheckSUR, SFC and DISM, but they don't fix this problem.

When checking CBS.log, I always see severel instances of ERROR_ILLEGAL_CHARACTER, like this:

2016-08-29 07:12:02, Error CSI 0000000b@2016/8/29:05:12:02.569 (F) d:\win7sp1_gdr\base\wcp\com\copyout_string.cpp(36): Error HRESULT_FROM_WIN32(582) originated in function Windows::COM::CopyOut expression: StringIn->Buffer != L'\0' [gle=0x80004005]
2016-08-29 07:12:02, Error CSI 0000000c (F) HRESULT_FROM_WIN32(582) #4844# from Windows::ServicingAPI::CCSITransactionAnalysis_ICSIInventory::EnumDeploymentReferences(flags = 00000003, tlcid = @0x445a20,pszSubscription = (null), pszCodebase = (null)) [gle=0x80070246]
2016-08-29 07:12:02, Info CBS Failed to call EnumDeploymentReferences on deployment: amd64_6aae4e8624978d8a25a2691f39a9abf4_31bf3856ad364e35_6.1.7601.22097_none_30286a2501ed131c [HRESULT = 0x80070246 - ERROR_ILLEGAL_CHARACTER]
2016-08-29 07:12:02, Info CBS Failed to load deployment owners for deployment: amd64_6aae4e8624978d8a25a2691f39a9abf4_31bf3856ad364e35_6.1.7601.22097_none_30286a2501ed131c. [HRESULT = 0x80070246 - ERROR_ILLEGAL_CHARACTER]
2016-08-29 07:12:02, Info CBS Failed to load component owners on component: amd64_microsoft-windows-netio-infrastructure_31bf3856ad364e35_0.0.0.0_none_d693fe06b5d534cb, version: 6.1.7601.22097 [HRESULT = 0x80070246 - ERROR_ILLEGAL_CHARACTER]


CheckSUR.log mentions three errors:

Checking Component Store
(f) CSI Corrupt Identity 0xC000000D r ricoh.inf-languagepack_31bf3856ad364e35_6.1.7600.16385_659a3a0fef6ee610 Bad identity
(f) CSI Corrupt Identity 0xC000000D w wiabr002.in..anguagepack_31bf3856ad364e35_6.1.7600.16385_9a69e941da809858 Bad identity
(f) CSI Missing Deployment Key 0x00000000 b617a87f8ff..acb2078c e8_31bf HKLM\Components\CanonicalData\Deployments

Regarding the upgrade to IE11, I can see in \Windows\IE11_main.log that it tries to download KB2729094 and tries to install that plus KB2888049, even though both are already installed according to "Installed Updates". But the install of KB2888049 fails with exit code 0x246:

01:19.466: INFO: Launched package installation: C:\Windows\SysNative\dism.exe /online /add-package /packagepath:C:\Windows\TEMP\IE16482.tmp\KB2888049_amd64.cab /quiet /norestart
01:55.269: INFO: Process exit code 0x00000246 (582) [An illegal character was encountered. For a multi-byte character set this includes a lead byte without a succeeding trail byte. For the Unicode character set this includes the characters 0xFFFF and 0xFFFE. ]

And the same happens when it tries to install IE11-neutral.Downladed.cab too.

I have checked the pre-requisites for installing IE11 according to KB2847882, and they are all already installed, except the optional KB2639308.

I've noticed there are fairly many WER files mentioning TrustedInstaller.exe failing with EventType=WindowsWcpOtherFailure3, and some with WindowsWcpOtherFailures and CbsPackageServicingFailure2.

Today I ran SFCFix, and it too was unable to fix the problem automatically.
This is the output:

SFCFix version 42.32768.0.0 by niemiro.
Start time: 2016-08-29 09:39:48.899
Microsoft Windows 7 Service Pack 1 - amd64
Not using a script file.

AutoAnalysis::
SUMMARY: Some corruptions could not be fixed automatically. Seek advice from helper or sysnative.com.
CBS & SFC total detected corruption count: 0
CBS & SFC total unimportant corruption count: 0
CBS & SFC total fixed corruption count: 0
SURT total detected corruption count: 3
SURT total unimportant corruption count: 0
SURT total fixed corruption count: 0
AutoAnalysis:: directive completed successfully.

Successfully processed all directives.
SFCFix version 42.32768.0.0 by niemiro has completed.
Currently storing 0 datablocks.
Finish time: 2016-08-29 09:42:57.314
----------------------EOF-----------------------

I am attaching a ZIP of the \Windows\Logs\CBS directory.
I was unable to upload any of the CbsPersist*.cab files though, maybe due to size.

About 12 months before I first started noticing this problem, this computer had some bad RAM, which I subsequently replaced. I don't know if that is related to this, since there was after all a substantial amount of time between these events. But I guess that if some corrupt data was saved from the corrupt RAM when that happened, that might cause lingering symptoms like this.

The question is, how to fix it? I whish I knew which file or data is causing the problem, so I could correct it. I haven't been able to track it down on my own.
 
Hi ske,

Do you still need assistance with this issue?
 
Good. Before I prepare a fix for the 3 errors reported in your CheckSUR.log, I would like to verify something. Follow the instructions below please.

myjIXnC.png
SFCFix - Fix Time

WARNING! The following fix is specific to the user's system in this thread. No one else should follow the instructions below to apply that fix, as it could damage your system. If you need assistance with an issue, please start a new thread and someone will assist you shortly.

Follow the instructions below to download and execute a SFCFix fix, and provide the log.
  • Download SFCFix and move the executable on your Desktop;
  • On your Desktop, right-click and select New, then Text Document. Give it the name SFCFixScript (it should be a .txt) extension;
  • Open the SFCFixScript.txt file you just created, and copy/paste the following in it;
    Code:
    BitShift::
  • Save any work you have open, and close every programs;
  • Drag the SFCFixScript.txt file over the SFCFix.exe executable and release it;
    1p8eDnI.gif
  • SFCFix will launch, let it complete;
  • Once done, a file will appear on your Desktop, called SFCFix.txt;
  • Open the file, then copy and paste its content in your next reply;
 
The SFCFix BitShift script has been running for more than 19 hours straight now, and hasn't finished yet, and I have no indication how far along it has come...
 
I would give it another few hours just in case as there's two outcomes: either it'll find nothing, either it'll find a lot of BitShift in the Registry, in which case you probably have a failing hard drive and/or RAM stick(s).
 
After running for 42 hours, SFCFix had still not finished, so I did some debugging by myself. Process Monitor showed that SFCFix scanned registry COMPONENT keys until it reached one special key with a shorter name than all the others and which failed to open. After that, SFCFix stopped doing any more external calls visible in Process Monitor, and seems to have entered some infinite internal loop, in stead of reporting the problem.

The key that failed to open was HKLM\COMPONENTS\CanonicalData\Catalogs\527c7d2d37078ffb45d74cf3a2bfb653fa901.

I can't open it in RegEdit either. "An error is preventing this key from being opened. Details: The system cannot find the file specified."

All other keys following this one in the registry appear to be of normal length, and the few I tried opened normally.

(Another thing I noticed is that SFCFix doesn't seem to close any keys it has already opened and finished processing. According to Process Monitor they remained open until I aborted SFCFix, and were then closed automatically.)
 
Alright, I'll take a look at your COMPONENTS Hive myself. I'll see if I can access that key or at least back it up, since we'll have to delete it and replace it.

88fYBWt.png
Retrieving the COMPONENTS Hive
Follow the instructions below to retrieve your COMPONENTS Hive and send me it.
  • Open your Windows Explorer, and navigate to the C:\Windows\System32\Config folder;
  • In this folder, find the COMPONENTS file (there's no extension), and copy it to your Desktop;
    Note: If you receive an error message saying that the COMPONENTS file is in use, restart your computer and try again. If the error message persist, let me know.
  • Right-click on it, and select Send to... and choose Compressed (zipped) folder;
  • Upload the file on Dropbox, Google Drive or OneDrive and post the download URL for it here;
 
Alright so there's two keys like that from what I can see in your COMPONENTS Hive and CheckSUR.log.
Code:
HKLM\COMPONENTS\CanonicalData\Catalogs\527c7d2d37078ffb45d74cf3a2bfb653fa901
HKLM\COMPONENTS\CanonicalData\Deployments\b617a87f8ff..acb2078c e8_31bf
And there also seems to an issue with this key (a value it contain).
Code:
[HKEY_LOCAL_MACHINE\ske_COMP\CanonicalData\Catalogs\b07280c087f1fefebc1e28e77b4b830b222d2bb3dc65f3138309e192489e9ecc]
"c!wiabr002.in"
I'm also not able to delete these keys via Regedit directly or the command prompt, so I'll be trying alternative methods.

Meanwhile, it would be a good idea for you to test your RAM sticks to make sure they aren't failing.

https://www.sysnative.com/forums/hardware-tutorials/3909-test-ram-memtest86.html
 

Has Sysnative Forums helped you? Please consider donating to help us support the site!

Back
Top