你目前正处于脱机状态,正在等待 Internet 重新连接

在 Windows 7 或 Windows 2008 R2 上安装 Service Pack 1 后,计算机可能会冻结或重新启动为黑屏并显示“0xc0000034”错误消息

症状
在操作系统为 Windows 7 或 Windows 2008 R2 的计算机上安装 Service Pack 1 (SP1)。安装该 Service Pack 后,计算机可能会冻结或重新启动。如果计算机重新启动,您会在黑屏上收到如下错误消息:
 
!! 0xc0000034 !!142/53007 (_0000000000000000.cdf-ms)

注意 如果重新启动计算机,您将收到相同的错误消息。

当用户尝试安装 Service Pack 后没有重新启动计算机完成安装,而又安装了其他更新并重新启动计算机时可能出现该问题。此外,如果在使用 WSUS 时将 Service Pack 与其他更新一同安装,也会出现该问题。

在安装 Service Pack 的过程中,Windows 的维护功能会维护要执行的操作的列表。有些操作会立即执行,而另一些则需要在重新启动计算机后执行。需要在重新启动后执行的列表之一为 Primitive Operation Queue (POQ)。需要在重新启动过程中执行的 POQ 操作存储于 pending.xml。在失败的情况下,系统两次尝试完成 POQ 操作。第二次尝试完成 POQ 操作失败(因为操作已完成)并生成错误“0xc0000034”。Windows 将此安装阶段中出现的任何失败视作阻塞,维护功能将停止计算机继续运行。

如果您不是高级用户,且当前在基于 Windows 7 的计算机上遇到此错误,请单击以下链接查看 Microsoft 网站上的恢复步骤:

安装 Windows 7 Service Pack 1 (SP1) 后如何解决“错误 0xc0000034”?

预防性步骤

要避免发生此问题,请下载并安装以下知识库文章中的更新:

尝试安装 Windows 7 SP1 或 Windows Server 2008 R2 SP1 时可阻止“0xC0000034”错误消息的更新已发布

解决方案
若要解决此问题,请执行以下方法中的步骤:

从 Pending.xml 中删除 POQ 条目

此方法旨在通过创建和运行 .vbs 脚本解决此问题。成功创建和运行 .vbs 脚本后,Windows 7 Service Pack 1 的安装应可以成功完成。

注意

  • 此 .vbs 脚本仅适用于 0xc0000034 错误代码,请勿将此脚本用于 0xc0000034 错误以外的问题。
  • 我们建议仅高级用户使用此方法。
  • 若要使用此方法,我们建议您可以访问第二台计算机和可移动媒体设备(如 USB 指形驱动器)。
开始之前的准备工作

开始之前请查找以下内容:
  • 找到一台可以访问 Internet 的第二台计算机。您将要使用第二台计算机来创建脚本 (.vbs) 文件。若要创建脚本 (.vbs) 文件,您将要从此知识库文章中复制脚本的文本。
  • 找到可移动媒体设备,如 USB 指形驱动器。将您创建的脚本 (.vbs) 文件复制到可移动媒体设备。然后,将此脚本 (.vbs) 文件转到出现此问题的计算机上。
注意:如果您不具有第二台计算机和可移动媒体设备的访问权限,您可以在出现此问题的计算机上创建脚本 (.vbs) 文件。为此,请转到“系统恢复选项”,打开命令提示符,然后从命令提示符处启动“记事本”。接着,通过键入此知识库文章中的脚本文本来手动创建脚本 (.vbs) 文件。然后将此脚本 (.vbs) 文件保存到您的本地硬盘驱动中。您可以运行此脚本来完成步骤。

部分 1:创建脚本 (.vbs) 文件

为此,请按照下列步骤操作:
  1. 找到具有访问 Internet 权限的第二台计算机。
  2. 打开记事本。
  3. 复制以下文本并将其粘贴到记事本中。

    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.")

    W
    script.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.")
  4. 单击“文件”, 然后单击“另存为”
  5. 将文件命名为 Script.vbs,并将文件保存到可移动媒体设备,如 USB 指形驱动器。

部分 2:运行脚本 (.vbs) 文件

注意:以下步骤假设您已将脚本 (.vbs) 文件复制到 USB 指形驱动器中。如果您使用其他类型的可移动媒体设备,则步骤会略有不同。

为此,请按照下列步骤操作:

  1. 重新启动计算机并开始按键盘上的 F8 键。必须在 Windows 徽标出现前按 F8 键。如果 Windows 徽标已经出现,则必须通过等到出现 Windows 登录提示,然后关闭并重新启动计算机,来再次尝试。
    注意: 对于配置为在多操作系统下启动的计算机,可以在显示“启动”菜单时按 F8 键。
  2. 使用箭头键选择“高级启动选项”区域中的“修复计算机”,然后按 Enter。如果出现提示,则选择要修复的 Windows 7 安装,然后单击“下一步”
  3. 选择语言和一种键盘输入方法,然后单击“下一步”
  4. 选择用户名,键入密码,然后单击“确定”
  5. “系统修复选项”下,请记下“选择修复工具”下行列出的 Windows 7 驱动器号。

    例如,您可能会看到类似于以下内容的信息:

    操作系统:Windows 7,在 (C:)<卷名> 上

    注意:在此示例中,Windows 7 的驱动器号是 C。
  6. 在“系统修复选项”下,单击“命令提示符”。
  7. 将含有之前创建的脚本 (.vbs) 文件的可移动媒体插入到计算机中。
  8. 在命令提示符处,导航到该驱动器和包含您之前所创建脚本 (.vbs) 文件的目录。

    例如,如果您以前将创建的 script.vbs 文件保存到 USB 指形驱动器根目录,并且与 USB 指形驱动器相关联的驱动器号为“E”驱动器,则您只需在命令提示符处键入以下内容,然后按 Enter

    E:

    注意:如果您不确定哪个驱动器包含可移动媒体,您可以使用 Diskpart 来显示驱动器列表。若要运行 Diskpart,请按照以下步骤进行操作。
    1. 键入 Diskpart,然后按 Enter
    2. 键入 List volume,然后按 Enter
    3. 请记下包含具有之前所创建脚本 (.vbs) 文件的可移动媒体的驱动器。假设您使用了 USB 指形驱动器,则驱动器类型将列为“可移动”。
    4. 若要退出 Diskpart,请键入 Exit,然后按 Enter

  9. 在命令提示符处,键入以下命令,然后按 Enter

    Cscript Script.vbs <Windows _7_drive_letter>:\Windows\winsxs\pending.xml.

    此处,<Windows _7_drive_letter> 是安装 Windows 7 操作系统的驱动器号。

    这将运行 Script.vbs 文件中的脚本。在脚本完成后,您可能会看到一条与以下消息类似的消息。

    已删除 2 个 POQ 节点。脚本已完成
  10. 若要退出命令提示符窗口,请键入 Exit,然后按 Enter
  11. 重新启动计算机。Service Pack 1 安装现在应成功完成。
0xc0000034 boot reboot black screen




属性

文章 ID:975484 - 上次审阅时间:09/26/2011 18:46:00 - 修订版本: 4.0

Windows 7 Starter, Windows 7 Home Basic, Windows 7 Home Premium, Windows 7 Enterprise, Windows 7 Professional, Windows 7 Ultimate, Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 for Itanium-Based Systems, Windows Server 2008 R2 Service Pack 1, Windows Server 2008 R2 Standard

  • kbupdateissue kbtshoot kberrmsg kbexpertiseinter kbexpertisebeginner kbexpertiseadvanced kbsurveynew kbprb KB975484
反馈