win8.1 x64; ERROR_SXS_COMPONENT_STORE_CORRUPT; Failed to get CSI system store; OpenCanonicalDataKey

黄禄轩 11 Reputation points
2022-05-17T15:41:12.82+00:00

tried sfc /scannow, dism /online /cleanup-image /scanhealth, dism /online /cleanup-image /restorehealth,dism /online /cleanup-image /startcomponentcleanup /resetbase

错误: 14098

组件存储已损坏。

可以在 C:\windows\Logs\DISM\dism.log 上找到 DISM 日志文件

or

Error 14098
Component Store has been corrupted

=======================================

in CBS.log

2022-05-17 23:11:54, Info CBS Repr: CBS Store check completes
2022-05-17 23:11:54, Info CSI 00000002 No store version format found; DLL store format 0.0.0.6
2022-05-17 23:11:54, Error CSI 00000003@Gary_WRC /5/17:15:11:54.138 (F) base\wcp\componentstore\storelayout.cpp(3856): Error STATUS_SXS_COMPONENT_STORE_CORRUPT originated in function ComponentStore::CRawStoreLayout::OpenCanonicalDataKey expression: (null)
[gle=0x80004005]
2022-05-17 23:11:54, Info CBS Added C:\windows\Logs\CBS\CBS.log to WER report.
2022-05-17 23:11:54, Info CBS Added C:\windows\Logs\CBS\CbsPersist_20220517151139.log to WER report.
2022-05-17 23:11:54, Info CBS Not able to add current session file to Windows Error Report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2022-05-17 23:11:54, Info CBS Not able to add pending.xml to Windows Error Report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2022-05-17 23:11:54, Info CBS Not able to add pending.xml.bad to Windows Error Report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2022-05-17 23:11:54, Info CBS Not able to add SCM.EVM to Windows Error Report. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2022-05-17 23:11:54, Info CBS Failed to get CSI system store [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS CSI store consistency check fails. [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS Failed to load component store [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS Failed to get CSI store. [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS Failed to get CSI Store. [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS Failed to get CSI session store. [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS Failed to check CSI store. [HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]
2022-05-17 23:11:54, Info CBS Ensure CBS corruption flag is clear
2022-05-17 23:11:54, Info CBS Ensure WCP corruption flag is clear

=====================================

is there any way to fix this without reinstalling the whole system

Windows for business | Windows Client for IT Pros | User experience | Other
0 comments No comments
{count} vote

5 answers

Sort by: Most helpful
  1. Docs 15,761 Reputation points
    2022-05-21T23:15:24.82+00:00

    One or more of these may be useful:

    1) system restore to a date prior to the corruption

    2) restore an image that was created prior to the corruption

    3) perform regback

    4) perform an in place upgrade repair (often does not fix registry problems)

    5) perform a custom install

    6) upgrade / clean install to Windows 10

    Options 1 -4 do not require the reinstallation of drivers or applications.

    .
    .
    .
    .
    .

    Please remember to vote and to mark the replies as answers if they help.

    On the bottom of each post there is:

    Propose as answer = answered the question

    On the left side of each post there is /\ with a number: click = a helpful post
    .
    .
    .
    .
    .

    1 person found this answer helpful.

  2. Docs 15,761 Reputation points
    2022-05-22T09:26:27.57+00:00

    Let's see if this is a possible fix.

    1) boot to the Windows MCT

    2) it may take 5 minutes displaying the windows icon

    3) Use the default settings for language, time, currency, and keyboard

    4) click next

    5) In the left lower corner click Repair your computer

    6) click troubleshooting

    7) click startup repair (it is expected to fail)

    8) click system restore (it is expected to fail)

    9) click command prompt

    You should see a pop up with title bar: Administrator: X:\windows\system32\cmd.exe

    This is the registry backup method:

    For each step you must see sizable file sizes for this to work.

    If you see zeros the method will fail.

    The command: dir

    will be used for each step to make sure you are in the proper location and check the size of the files

    10) type: C:
    11) dir

    12) type: D:
    13) dir

    Choose the C: or the D: drive to proceed. It should be the windows drive and not the USB drive.

    14) type: bcdedit | find "osdevice"

    This should display the location of the partition and in most cases is the location of the affected drive.

    For this post I will use C: however you should pick the drive letter that you found that has the windows files on your computer.

    The proper drive will display: perflogs, program files, program files (x86), users, windows, etc

    15) type or copy and paste: cd \windows\system32\config

    It should display: C:\windows\system32\config>

    16) type: dir

    It should display: bbi, bcd-template, components, default, drivers, elam, sam, security, software, system, vsmidk, journal, regback, systemprofile txr, etc.

    All of the file sizes should be sizable. If it displays zeros then abort.

    Make a new directory and name it backup or something similar.

    17) type: MD backup

    Copy all of the files into this new directory.

    18) type or copy and paste: copy . backup

    It should now display: bbi, bcd-template, components, default, drivers, elam, sam, security, software, system, vsmidk indicating the files were copied.

    Change the directory to regback

    19) type: cd regback

    It should now display: c:\windows\system32\config\regback>

    20)type: dir

    It should display: default, sam, security, software, system etc

    All of these files must be sizable. If it displays zeros then abort.

    21) type or copy and paste: copy . ..

    It should now display:

    DEFAULT

    Overwrite ..\default? (yes/no/all):

    22) type: a

    It should now display: sam, security, software, system and that the files were copied.

    23) type: exit

    24) click turn off your PC

    Remove the USB flash drive if you had changed your boot order. Otherwise you can leave it and power on your computer.

    .
    .
    .
    .
    .

    Please remember to vote and to mark the replies as answers if they help.

    On the bottom of each post there is:

    Propose as answer = answered the question

    On the left side of each post there is /\ with a number: click = a helpful post
    .
    .
    .
    .
    .

    1 person found this answer helpful.

  3. Docs 15,761 Reputation points
    2022-05-22T09:33:56.007+00:00

    I'd just notice a website problem where it omitted part of the commands.

    Any command with a * it failed to display the *

    There could be other website issues so compare each post for the applicable command.

    This is another post.

    Let's see if this is a possible fix.
    
    1) boot to the Windows 10 iso
    2) it may take 5 minutes displaying the windows icon
    3) Use the default settings for language, time, currency, and keyboard
    4) click next
    5) In the left lower corner click Repair your computer
    6) click troubleshooting
    7) click startup repair (it is expected to fail)
    8) click system restore (it is expected to fail)
    9) click command prompt
    You should see a pop up with title bar: Administrator: X:\windows\system32\cmd.exe
    This is the registry backup method:
    For each step you must see sizable file sizes for this to work.
    If you see zeros the method will fail.
    The command: dir 
    will be used each step to make sure you are in the proper location and check the size of the files
    10) type: C:
    11) dir
    12) type: D:
    13) dir
    Choose the C: or the D: drive to proceed. It should be the windows drive and not the USB drive.
    14) type: bcdedit | find "osdevice"
    This should display the location of the partition and in most cases is the location of the affected drive.
    For this post I will use C: however you should pick the drive letter that you found that has the windows files on your computer.
    The proper drive will display: perflogs, program files, program files (x86), users, windows, etc
    15) type or copy and paste: cd \windows\system32\config
    It should display: C:\windows\system32\config>
    16) type: dir
    It should display: bbi, bcd-template, components, default, drivers, elam, sam, security, software, system, vsmidk, journal, regback, systemprofile txr, etc.
    All of the file sizes should be sizable. If it displays zeros then abort.
    Make a new directory and name it backup or something similar.
    17) type: MD backup
    Copy all of the files into this new directory.
    18) type or copy and paste: copy *.* backup
    It should now display: bbi, bcd-template, components, default, drivers, elam, sam, security, software, system, vsmidk indicating the files were copied.
    Change the directory to regback
    19) type: cd regback
    It should now display: c:\windows\system32\config\regback>
    20)type: dir
    It should display: default, sam, security, software, system etc
    All of these files must be sizable. If it displays zeros then abort.
    21) type or copy and paste: copy *.* ..
    It should now display: 
    DEFAULT
    Overwrite ..\default? (yes/no/all):
    22) type: a
    It should now display: sam, security, software, system and that the files were copied.
    23) type: exit
    24) click turn off your PC
    Remove the USB flash drive if you had changed your boot order. Otherwise you can leave it and power on your computer.
    

    .
    .
    .
    .
    .

    Please remember to vote and to mark the replies as answers if they help.

    On the bottom of each post there is:

    Propose as answer = answered the question

    On the left side of each post there is /\ with a number: click = a helpful post
    .
    .
    .
    .
    .

    1 person found this answer helpful.
    0 comments No comments

  4. Docs 15,761 Reputation points
    2022-05-22T17:46:06.047+00:00

    The regback unfortunately will fail then by the dates.

    A custom install will save files to Windows.old

    Drivers and applications need to be reinstalled.

    Important files are copied from Windows.old

    These are links for Windows 10 which can be applied to Windows 8.1:

    https://www.tenforums.com/tutorials/120352-custom-install-windows-10-a.html

    https://www.tenforums.com/tutorials/148005-how-restore-files-windows-old-folder-windows-10-a.html

    There are third party software (for a fee) that may have options.

    See if Laplink has any options:

    https://go.laplink.com/pcmover-branded/transfer-programs-to-new-computer?utm_source=google&utm_medium=ppc

    .
    .
    .
    .
    .

    Please remember to vote and to mark the replies as answers if they help.

    On the bottom of each post there is:

    Propose as answer = answered the question

    On the left side of each post there is /\ with a number: click = a helpful post
    .
    .
    .
    .
    .

    1 person found this answer helpful.
    0 comments No comments

  5. 黄禄轩 11 Reputation points
    2022-05-29T08:26:52.53+00:00

    OK, I solved it with regedit.
    First, what is SXS COMPONENT STORE. I think it refers to \WINDOWS\SYSTEM32\CONFIG\COMPONENTS, it is a registry which will load into HKLM or HKEY_LOCAL_MACHINE.
    The ERROR_SXS_COMPONENT_STORE_CORRUPT is thrown when HKLM\COMPONENTS is missing some keys for example HKLM\COMPONENTS\DerivedData.
    So it's easy to solve:

    1. if HKLM\COMPONENTS is corrupt, execute REG UNLOAD HKLM\COMPONENTS, then delete COMPONENTS file and execute REG LOAD HKLM\COMPONENTS C:\WINDOWS\SYSTEM32\CONFIG\COMPONENTS
    2. import following .reg file
      Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\COMPONENTS]
    "StoreFormatVersion"=hex:30,00,2e,00,30,00,2e,00,30,00,2e,00,36,00

    [HKEY_LOCAL_MACHINE\COMPONENTS\CanonicalData]

    [HKEY_LOCAL_MACHINE\COMPONENTS\CanonicalData\Catalogs]

    [HKEY_LOCAL_MACHINE\COMPONENTS\CanonicalData\Deployments]

    [HKEY_LOCAL_MACHINE\COMPONENTS\ccpinterface]

    [HKEY_LOCAL_MACHINE\COMPONENTS\DerivedData]

    [HKEY_LOCAL_MACHINE\COMPONENTS\DerivedData\Components]

    [HKEY_LOCAL_MACHINE\COMPONENTS\DerivedData\VersionedIndex]

    [HKEY_LOCAL_MACHINE\COMPONENTS\Installers]

    [HKEY_LOCAL_MACHINE\COMPONENTS\ServicingStackVersions]

    1. execute DISM /Online /Cleanup-Image /RestoreHealth

    Now it's better, at least CSUR says it's ok.
    And now it's time to solve problems like "MissingWinningComponentKey on resource [92]"amd64_netfx4-fod_advertised_shared_reg_b03f5f7f11d50a3a_4.0.9680.16462_none_f7c58d76dde901b6"[gle=0x80004005]". And I think that's because some values are missing in HKLM\COMPONENTS\DerivedData\Components\<Component Name>\

    1 person found this answer helpful.
    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.