今天发现公司1台Windows7HomeBasic台式电脑在更新时出现 C0000034错误, 174/69790(_0000000000000000.cdf-ms)。 Baidu/google之后发现是微软的bug,并提供了修复办法。请参照: http://support.microsoft.com/kb/975484
部分 1:创建脚本 (.vbs) 文件
为此,请按照下列步骤操作:
- 找到具有访问 Internet 权限的第二台计算机。
- 打开记事本。
- 复制以下文本并将其粘贴到记事本中。
Dim xmlDoc, node, nodeList, fileName, backupFileName, numberOfPOQNodes
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
If Wscript.Arguments.Count = 0 Then
WScript.echo("Error!No XML file specified.")
Wscript.quit
End If
fileName = WScript.Arguments(0)
backupFileName = Left(fileName, InStrRev(fileName, ".")- 1) & "_backup.xml"
If Not xmlDoc.load(fileName) Then
WScript.echo("Failure loading XML file " & fileName & ".")
Wscript.quit
End If
xmlDoc.save(backupFileName)
Set nodeList = xmlDoc.documentElement.selectNodes("POQ")
numberOfPOQNodes = nodeList.Length
For Each node in nodeList
xmlDoc.documentElement.removeChild(node)
Next
xmlDoc.save(fileName)
Set xmlDoc = Nothing
WScript.echo(numberOfPOQNodes & " POQ nodes removed.Script completed.") - 单击“文件”, 然后单击“另存为”。
- 将文件命名为 Script.vbs,并将文件保存到可移动媒体设备,如 USB 指形驱动器。
部分 2:运行脚本 (.vbs) 文件
注意:以下步骤假设您已将脚本 (.vbs) 文件复制到 USB 指形驱动器中。如果您使用其他类型的可移动媒体设备,则步骤会略有不同。
为此,请按照下列步骤操作:
- 重新启动计算机并开始按键盘上的 F8 键。必须在 Windows 徽标出现前按 F8 键。如果 Windows 徽标已经出现,则必须通过等到出现 Windows 登录提示,然后关闭并重新启动计算机,来再次尝试。
注意: 对于配置为在多操作系统下启动的计算机,可以在显示“启动”菜单时按 F8 键。 - 使用箭头键选择“高级启动选项”区域中的“修复计算机”,然后按 Enter。如果出现提示,则选择要修复的 Windows 7 安装,然后单击“下一步”。
- 选择语言和一种键盘输入方法,然后单击“下一步”。
- 选择用户名,键入密码,然后单击“确定”。
- 在“系统修复选项”下,请记下“选择修复工具”下行列出的 Windows 7 驱动器号。
例如,您可能会看到类似于以下内容的信息:
操作系统:Windows 7,在 (C:)<卷名> 上
注意:在此示例中,Windows 7 的驱动器号是 C。 - 在“系统修复选项”下,单击“命令提示符”。
- 将含有之前创建的脚本 (.vbs) 文件的可移动媒体插入到计算机中。
- 在命令提示符处,导航到该驱动器和包含您之前所创建脚本 (.vbs) 文件的目录。
例如,如果您以前将创建的 script.vbs 文件保存到 USB 指形驱动器根目录,并且与 USB 指形驱动器相关联的驱动器号为“E”驱动器,则您只需在命令提示符处键入以下内容,然后按 Enter。
E:
注意:如果您不确定哪个驱动器包含可移动媒体,您可以使用 Diskpart 来显示驱动器列表。若要运行 Diskpart,请按照以下步骤进行操作。
- 键入 List volume,然后按 Enter。
- 请记下包含具有之前所创建脚本 (.vbs) 文件的可移动媒体的驱动器。假设您使用了 USB 指形驱动器,则驱动器类型将列为“可移动”。
- 若要退出 Diskpart,请键入 Exit,然后按 Enter。
- 键入 Diskpart,然后按 Enter。
- 在命令提示符处,键入以下命令,然后按 Enter:
Cscript Script.vbs <Windows _7_drive_letter>:\Windows\winsxs\pending.xml.
此处,<Windows _7_drive_letter> 是安装 Windows 7 操作系统的驱动器号。
这将运行 Script.vbs 文件中的脚本。在脚本完成后,您可能会看到一条与以下消息类似的消息。
已删除 2 个 POQ 节点。脚本已完成 - 若要退出命令提示符窗口,请键入 Exit,然后按 Enter。
- 重新启动计算机。Service Pack 1 安装现在应成功完成。
在实际操作时发现, Windows 7 Home Basic 并没有“高级启动选项”区域中的“修复计算机”,请使用WIN7PE,启动后同样运行Script.vbs,然后重新启动,可以修复。
直接删除Pending.xml是不是也可以呢? 或许也可以哦。