解决Windows 资源保护找到了损坏文件但无法修复问题

今天Windows 8.1系统的电脑突然卡住并且自动重启,通过事件查看器得到的资料有限,初步怀疑是系统文件受损导致,于是通过经典的sfc /scannow验证系统并修复受损文件,但是得到以下提示:

开始系统扫描。此过程将需要一些时间。

开始系统扫描的验证阶段。
验证 100% 已完成。

Windows 资源保护找到了损坏文件但无法修复
其中某些文件。CBS.Log windir\Logs\CBS\CBS.log 中有详细信息。
例如 C:\Windows\Logs\CBS\CBS.log。请注意,在脱机服务方案中,
当前不支持日志记录。

意思是找到了受损文件,但是sfc命令无法修复,没有找到关于无法修复的具体原因,打开C:\Windows\Logs\CBS\CBS.log文件后发现此日志记录的信息比较杂,不过我们可以通过Windows+X+A组合按键启动管理员权限的CMD控制台,然后运行以下命令直接输出受损文件详情到桌面sfcdetails.txt文件中:

findstr /C:"[SR] Cannot repair member file" %windir%\logs\cbs\cbs.log >"%userprofile%\Desktop\sfcdetails.txt"

通过以上命令,我得到了下面的输出:

2016-05-15 10:43:43, Info                  CSI    000005f4 [SR] Cannot repair member file [l:36{18}]"Amd64\CNBJ2530.DPB" of prncacla.inf, Version = 6.3.9600.17415, 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
2016-05-15 10:43:46, Info                  CSI    000005f6 [SR] Cannot repair member file [l:36{18}]"Amd64\CNBJ2530.DPB" of prncacla.inf, Version = 6.3.9600.17415, 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
2016-05-15 10:47:46, Info                  CSI    00000980 [SR] Cannot repair member file [l:36{18}]"Amd64\CNBJ2530.DPB" of prncacla.inf, Version = 6.3.9600.17415, 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
2016-05-15 10:47:47, Info                  CSI    00000982 [SR] Cannot repair member file [l:36{18}]"Amd64\CNBJ2530.DPB" of prncacla.inf, Version = 6.3.9600.17415, 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

这里仅仅是知道了文件Amd64\CNBJ2530.DPB受损,但是sfc无法修复又有什么用呢,不过通过这篇文章《通过sfc功能无法修复,提示”windows 资源保护找到了损坏文件但无法修复” 》找到了另外一种修复的方式,那就是在联网的情况下通过以下命令来实现:

DISM.exe /Online /Cleanup-image /Scanhealth
DISM.exe /Online /Cleanup-image /Restorehealth

依然通过Windows+X+A组合按键启动管理员权限的CMD控制台,然后以上命令以行为单位逐条输入并按下回车,稍等片刻后即可,完成修复后,可以再次使用sfc /scannow检查,幸运的是以这种方式也是可以成功修复受损文件的,如下图所示。

原文地址:https://www.cnblogs.com/karmapeng/p/10241731.html

时间: 2024-12-14 03:58:20

解决Windows 资源保护找到了损坏文件但无法修复问题的相关文章

【教程】教你解决“Windows 资源保护找到了损坏文件但无法修复其中某些文件”的问题【转载】

转载:http://www.cystc.org/?p=2827 很多人都会用sfc /scannow来解决系统文件损坏的问题,但有时也会遇到连sfc都无法修复的情况,最常见的就是出现“Windows 资源保护找到了损坏文件但无法修复其中某些文件 CBS.Log windir\Logs\CBS\CBS.log中有详细信息”,其实这是因为系统文件在winsxs中的备份也一并损坏的缘故,导致了最终文件无法被修复.解决的办法就是要找到损坏的文件,然后用正常的文件替换掉他. 第一步:找到损坏的文件 以管理

python使用adb获取Android Phone截图(解决Windows传输编码导致png文件损坏的问题)

使用adb命令 ./adb shell screencap -p 可以截取当前屏幕,并且作为stdout,传给外部.那么对于python,我们可以用如下代码获取数据流. 使用Popen创建子进程用于读取数据流. import subprocess out=subprocess.Popen('./adb shell screencap -p',stdout=subprocess.PIPE) out是当前的Popen实例,考虑到Windows接收过程中,会把\n当作\r\n写入流中,进而导致png文

解决Windows 组件存储已损坏,0x80073712错误

在 Windows 8 与 Windows Server 2012,当系统组件有损毁时,我们可以在不影响目前系统状况下来检查与修复系统组件.如下,当我添加功能组件时报如下错误,明显可以看出我的组件存储已损坏. 那今天就让我告诉大家解决方案,我们可以使用DSIM命令来解决如上问题.一条命令就可以搞定,通过这条命令是把那些不同的系统文件还原成官方系统源文件,其他的第三方软件和用户设置完全保留,比重装那是好多了,但比较耗时噢.而且在扫描与修复的时候系统未损坏部分正常运行,电脑可以照常工作,没有宕机时间

解决Windows传入Linux中的文件乱码

需要iconv工具: yum install glibc*   (安装工具) 例如:iconv -f gb2312 ceshi.txt -o cheshinew.txt 将原文件ceshi.txt以编码gb2312输出到新文件ceshinew.txt. iconv -l  列出所有的字符集.

怎样修复“Windows/System32/Config/System中文件丢失或损坏”故障

怎样修复“Windows/System32/Config/System中文件丢失或损坏”故障 英文原文引自 http://xphelpandsupport.mvps.org/how_do_i_repair_a_missing_or_cor1.htm 此类错误通常说明计算机由于注冊表的原因不能启动,下列操作应该可以修正以上错误.然而,须要特别注意的是,你须要将5个注冊表区域所有进行替换.仅仅简单的替换一个或者两个将会潜在的导致其它的错误 注意 假设你使用的是WindowsXP的OEM版本号,那么你

java配置ueditor中解决“未找到上传文件”错误提示

ueditor是一个功能十分强大的在线文本编辑器,但是在ssh框架中,确切的说实在struts2中由于其拦截器需要对request,session对象进行重新封装,这个过程中会把request对象中保存的一些内容清空,所以会导致ueditor的上传功能获取不到需要上传的内容导致“未找到上传文件”的错误! 参考网上资料和自己实验,最终的解决思路是,重写struts2中的一个转换的类,然后配置struts2使用我们重写的这个类.由于我们的工程中可能会有其他的上传等功能,为了不影响其他功能的时候,还需

vim应用:终极解决windows系统gvim/vim的各种乱码(文件,菜单,提示信息)!

这个方法解决了我的windows下 gvim的中文乱码问题(跟大家分享一下). 此方法引用   http://www.douban.com/note/145491549/ 查看文件的编码::echo &fileencoding Vim 有四个跟字符编码方式有关的选项,encoding.fileencoding.fileencodings.termencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们的意义如下: encoding: Vim

python字符集分析,解决windows下FTPClient下载中文名称文件乱码

python中的中文编码一直以来都是一个极为头大的问题,经常抛出编码转换的异常,python中的str和unicode到底是一个什么东西呢?在python中提到unicode,一般指的是unicode对象,例如'哈哈'的unicode对象为u'\u54c8\u54c8',而str,是一个字节数组,这个字节数组表示的是对unicode对象编码(可以是utf-8.gbk.cp936.GB2312)后的存储的格式.这里它仅仅是一个字节流,没有其它的含义,如果你想使这个字节流显示的内容有意义,就必须用正

windows和linux下读取文件乱码的终极解决办法!

乱码是个很恶心的问题. windows和linux读取txt文件,一旦读取了,编码发生改变,就无法再还原了,只有重启项目. 网上有很多方法都是读取文件头,方法很好,但是亲测都不能用(右移8位判断0xff的,取3个字节的-1,-2的,大体上网上最多就这两种). 后来偶然发现一个方法,CharsetPrinter. 这个方法需要引入jar包,非常好用. public static String guessEncoding(String filename) { try { CharsetPrinter