一. 出现0xC0000034的原因:补丁在安装完成后且未重启前状态为installpending,只有重启后才会转换成installed。
因此当机器中如果存在先前安装的补丁长时间没有重启,直接安装新的补丁,然后重新启动计算机时,可能会出现此问题。或者机器同时安装多个补丁,没有安装后重启再安装另一个,也会出现此问题。
二. 0xC0000034的解决办法:(懒人办法)替换最近的备份注册(Server系统备份注册表位置:C:\Windows\System32\config\RegBack\,PC系统则没有备份注册表,如果要替换,操作之前先对机器做快照以备回滚)或者在Windows RE 或者WinPE下运行以下命令 (命令都需要先确认下系统盘,以C盘为例)
1、删除存在的pending的补丁,完成后看能否进入系
mkdir C:\text
dism /image:C:\ /cleanup-image /revertpendingactions /ScratchDir:C:\text
2、找到C:\Windows\winsxs\pending.xml文件,备份后打开此文件,ctrl+F查找0000000000000000.cdf-ms通常包含在 < checkpoint>, < deletefile>, < movefile>这些标签里,有的话删除标签,然后保存文件,重启看能否进入系统
3、如果上述步骤依旧无法解决,请尝试以下方法:
1)打开注册表,选中HKEY local machine的注册表路径,选择文件——加载配置单元,定位文件夹 C:\Windows\System32\config\SYSTEM,命名为123
禁用TrustedInstaller
Location:HKEY_LOCAL_MACHINE\123\ControlSet001\Services\TrustedInstaller
Start
Value: 4 (4表示禁用TrustedInstaller服务)
*故障修复以后,将TrustedInstaller改回原来的值。
修改完成后,选中123,点击文件——卸载配置单元
2)删除损坏的事务条目 .blf和.regtrans-ms文件:
cd C:\windows\System32\Config\TxR
attrib -h -r -s
del *.blf
del *.regtrans-ms
cd C:\Windows\System32\Config
ren TxR TxR_old
mkdir TxR
下面2个文件夹重复以上的步骤,先备份再删除文件:
删除C:\Windows\System32\Config目录下的.blf和.regtrans-ms:
cd C:\Windows\System32\Config
attrib -h -r -s
mkdir backup
copy *.blf backup
copy *.regtrans-ms backup
del *.blf
del *.regtrans-ms
删除C:\Windows\System32\SMI\Store\Machine目录下的.blf和.regtrans-ms:
cd C:\Windows\System32\SMI\Store\Machine
attrib -h -r -s
mkdir backup
copy *.blf backup
copy *.regtrans-ms backup
del *.blf
del *.regtrans-ms
3)重命名 \Windows\WinSxS\pending.xml
cd C:\Windows\WinSxS\
ren pending.xml pending.xml.old1
4)打开注册表,选择 HKLM,然后文件-加载配置单元,定位到C:\Windows\System32\config\components,可以将其命名为 temp1,备份,然后删除下面的注册表项(如果存在)。
HKLM\temp1\ExecutionState(值为 5 表示它处于执行过程中)
HKLM\temp1\PendingXmlIdentifier
HKLM\temp1\NextQueueEntryIndexBCDB
HKLM\temp1\AdvancedInstallersNeedResolve
HKLM\temp1\StoreDirty
加载配置单元:C:\Windows\System32\config\software,可以将其命名为temp2,备份,然后删除下面的注册表项(如果存在)。
HKLM\temp2\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\PackagesPending
HKLM\temp2\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\ RebootPending
HKLM\temp2\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing \SessionsPending
修改完成后卸载配置单元temp1和temp2,重启看是否能进入系统
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。