总是需要一些温暖,哪怕是一点点自以为是的纪念……
17 Oct
前几天微软发布几个补丁,360安装补丁居然全部失败,手动安装提示"ASN1遇到不正确的标记值"错误.上网查得大多原因是程序数字签名出错导致ASN1报错.”“
Windows的数字签名制主要是为了确保程序的完整性,系统安全,平台的兼容性.程序的数字签名文件一般存在于C:\WINDOWS\system32\CatRoot\和C:\WINDOWS\system32\CatRoot2\目录下.其中CatRoot文件夹中包含了安全编录文件.CatRoot2文件夹中包含了编录数据库文件.假如CatRoot目录中的Hotfix*******.CAT文件如果没有通过签名认证,则会导致对应的KB*******.exe安装失败.
于是利用微软的文件签名验证程序Sigverif.exe查找机器上的未经过数字签名的程序.
开始->运行->输入Sigverif.exe->高级->查找其他未经过数字签名的文件->在该文件夹中查找->浏览目录C:\WINDOWS\system32\CatRoot\->确定->开始.搜索完成之后会有一个列表,在其他位置新建一个文件夹.打开C:\WINDOWS\system32\CatRoot\目录,将该列表中的文件逐一剪切出来复制到新建的文件夹被系统出故障修复用(当然你也可以直接删除).然后手动打上补丁应该就不会"ASN1遇到不正确的标记值"错误了.
下面几段话来自网络,可以参考一下:
1.进程sigverif.exe
进程文件 sigverif.exe
进程名称 File Signature Verification
英文描述 sigverif.exe is a process associated with Microsoft Windows Operating System from Microsoft Corporation.
进程分析 MicrosoftWindows签字验证工具。在计算机上查找签署的和未签署的文件。所谓签署的文件,就是被授予Microsoft数字签署的文件。该签署表明,该文件是原始文件的一模一样的副本。使用签字验证工具,可以查看签署的文件的身份验证;确认该文件还没有被篡改;搜索指定范围内的签署的文件;搜索指定范围内的未签署的文件
2.关于C:\WINDOWS\system32\CatRoot和C:\WINDOWS\system32\CatRoot2目录:
CatRoot文件夹中包含了安全编录文件.CatRoot2 文件夹中包含了编录数据库文件.你也许能够删除这两个文件夹以及其中的内容. 这个就取决于你的系统了.
当你安装某些第三方程序时, 可能会需要某些特定的 .CAT 文件存在. 这些 .CAT 存在于以下文件夹中:C:\WINDOWS\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
有些人可以将其删除而不出现任何问题. 而其它人就不行.在我的系统上, 我发现, 使用 Acronis True Image 的浏览磁盘镜像的功能时, 需要某些 .CAT 文件. 如果不存在, 那么就会弹出一个Windows 硬件安装窗口, 它会告诉你 '你为以下硬件所安装的软件: 通用卷 没有通过Windows 标识测试,(用来验证它与 Windows 的兼容性)...等等.'
如果我选择继续, 那么就会弹出对话框, 说 '无法为分区指派盘符.'简而言之, Acronis True Image 的浏览磁盘镜像功能离不开特定的 .CAT 文件.
你所安装的某些第三方程序可能会依赖于某些特定的 .CAT文件.
我还发现在我的系统上需要以下两个 .CAT 文件存在:'oemO.CAT' 和 '1.CAT'.当 oemO.CAT 和 1.CAT 不存在时, 'dberr.txt' 中就会出现错误记录, 其存在于 C:\WINDOWS\system32\CatRoot2 中.我注意到, 当我打开设备管理器中的设备属性时就会出现这些错误, 并且当我使用 Acronis True Image 的浏览镜像功能时也会出现这些错误.
我偶尔也会在 dberr.txt 中看到其它的 .CAT 错误: Fp4.CAT, IMS.CAT, MSMSGS.CAT, msn7.cat, msn9.cat, MSTSWEb.CAT, NTpRINT.CAT, Sp2.CAT, startoc.cat 和 wmerrenu.cat.
在我的系统中有这么多的 .CAT 文件, 很难确定哪些 .CAT 文件可被删除.我只是把所有的 Hotfix .CAT 文件 (Kb*.* files) 删掉了. 你可以通过 Hotfix 号码将其识别出来.
以下是一些你可以做的东西, 只要你愿意...
把所有的 .CAT 文件放置到一个别的文件夹中. 周期性地检查C:\WINDOWS\system32\CatRoot2 中的 'dberr.txt'. 查看是否有缺失 .cat 文件的错误信息. 然后把有提示的 .CAT 文件放回到 C:\WINDOWS\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE} 文件夹中
当你把所有所需的 .CAT 文件放回原位之后, 'dberr.txt' 就会停止显示错误了.
dberr.txt..........关于编录文件注册情况的日志文件. 包含了未注册编录文件的相关信息, 并且只有当识别出未注册的编录时才会存在.
缺失编录文件时也会产生 dberr.txt.
关于 CatRoot2 文件夹, 我一般都是用文件清理工具删除其中的某些垃圾文件, 而不是删除整个文件夹. CatRoot2 文件夹中产生的文件都是临时文件. 其扩展名为 *.chk, *. emb, *log, 以及 *.txt.
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。