无法安装更新程序在 Windows Vista、 Windows 7,Windows Server 2008 和 Windows Server 2008 R2

文章编号: 2509997 - 查看本文应用于的产品
展开全部 | 关闭全部

本页

症状

当您尝试安装更新到 Windows、 您试图安装的 Windows 组件,或尝试安装 Microsoft 或第三方软件程序时,您会遇到一个或多个以下症状:
  • 您不能查看 Windows 角色或功能。
  • 服务包安装将失败。
  • 当您尝试连接到 Microsoft Windows Update 网站或 Microsoft 更新网站时,以下错误代码中的一个记录 (windowsupdate.log) 中的 Windows 更新日志中或在服务组件基于日志 (CBS.log) 中:
    • 0xC80001FE
    • 0x80200010
    • 0x80070643
    • 0x80246002
    • 0x80070490
    • 0x80070420
    • 0x80073712
    • 0x80246007
    • 0x80000FFF
    • 0x80070424
    • 0x80248007
    • 0x8007064C
    • 0x8024D00C
    • 0x8007066A
    • 0x80245003
    • 0x8024402C

原因

可能出现此问题,如果一个或多个下列条件,则:
  • Windows 更新数据库已损坏。
  • 防病毒软件配置为扫描 %Windir%\SoftwareDistribution 文件夹。
  • 后台智能传输服务 (BITS) 服务不会收到内容链接标头。
  • 未正确注册所需的系统文件。
  • Windows 安装程序遇到错误。
  • 基于组件服务 (CBS) 清单已损坏。
  • 在安装过程中停止 Windows Opdate 服务。
  • 文件版本冲突存在 Windows 更新代理文件。

解决方案

若要解决此问题,请尝试下列方法。在每个方法中执行的步骤后,进行测试以查看问题是否已解决之前,继续下一种方法。如果通过任何方法解决问题,您不必使用其余的方法。

方法 1: 重新启动计算机,并试着重新安装更新程序

关闭所有正在运行的程序,重新启动计算机,然后尝试重新安装这些更新。

注意 重新启动计算机将确保完成后所有以前的安装,并且它们可以完成前没有剩余的进程需要重新启动系统。

方法 2: 运行系统更新准备工具 (CheckSur.exe)

下载并运行系统更新准备工具。此工具运行一次性扫描可能会阻止将来维护服务运行的不一致。有关如何下载并运行 CheckSur.exe 工具的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
947821 Windows Vista、 Windows Server 2008,Windows 7,以及 Windows Server 2008 R2 系统更新准备工具的说明
请尝试再次安装更新。

注意 在运行该工具后,将 CheckSur.log 文件保存在以下位置:
%systemroot%\logs\cbs

方法 3: 运行系统文件检查器工具 (SFC.exe)

运行系统文件检查器工具 (SFC.exe)。为此,请执行以下步骤:
  1. 打开管理命令提示符窗口。
  2. 在命令提示符下键入 sfc /scannow然后按 输入.
  3. 在扫描完成后,请尝试重新安装更新。

方法 4: 重置 Catroot2 文件夹的内容

重置 Catroot2 文件夹的内容。为此,请执行以下步骤:
  1. 键入以下命令,并在每个命令之后按 Enter:
    • net stop cryptsvc
    • md %systemroot%\system32\catroot2.old
    • xcopy %systemroot%\system32\catroot2 %systemroot%\system32\catroot2.old /s
  2. 删除 catroot2 文件夹中的所有内容,但不是都删除 catroot2 文件夹。
  3. 键入下面的命令,然后按 Enter 键:
    net start cryptsvc
  4. 退出命令提示符窗口。

方法 5: 删除任何不正确的注册表值

删除注册表中可能存在的任何不正确的值。为此,请执行以下步骤:
  1. 单击 启动然后键入 注册表编辑器 在中 开始搜索 框中。
  2. 在中程序 列表中单击 regedit.exe.
  3. 找到并选择下面的注册表子项:
    HKEY_LOCAL_MACHINE\COMPONENTS
  4. 用鼠标右键单击组件.
  5. 单击 导出.
  6. 在中文件名称 框中键入 组件.
  7. 在中 将保存在 框中单击 桌面单击 保存然后将文件保存到您的桌面。
  8. 在详细信息窗格中,用鼠标右键单击 PendingXmlIdentifier然后单击 删除.如果此值不存在,请转到下一步。
  9. 在详细信息窗格中,右单击 NextQueueEntryIndex然后单击 删除.如果此值不存在,请转到下一步。
  10. 在详细信息窗格中,右键单击AdvancedInstallersNeedResolving然后单击 删除.如果该值不存在,请转到下一步。
  11. 重新启动计算机。
  12. 请尝试重新安装这些更新。
方法 6: 注册 Windows 更新文件
注册 Windows 更新文件。为此,请执行以下步骤:
  1. 打开管理命令提示符窗口。
  2. 在命令提示符下键入以下命令:
    REGSVR32 WUPS2。DLL /S
    REGSVR32 WUPS。DLL /S
    REGSVR32 WUAUENG。DLL /S
    REGSVR32 WUAPI。DLL /S
    REGSVR32 WUCLTUX。DLL /S
    REGSVR32 WUWEBV。DLL /S
    REGSVR32 JSCRIPT。DLL /S
    REGSVR32 MSXML3。DLL /S
  3. 请尝试再次安装更新。

请确保您的防病毒应用程序不会扫描某些文件的方法 7:

请确保您的防病毒应用程序不会扫描中的文件 %windir%\SoftwareDistribution 在其安装 Windows 更新代理的任何计算机上的目录。

对于运行 Windows Server 2003、 Microsoft Windows 2000、 Windows XP、 Windows Vista 中或 Windows Server 2008 的计算机,不要扫描下列文件和文件夹。

注意 这些文件不存在感染风险。如果扫描这些文件,因为某些文件可能被锁定,可能会出现严重的性能问题。如果按名称标识一组特定的文件,则只有这些文件而不是整个文件夹中排除。有时,必须排除整个文件夹。不要排除任何基于文件扩展名的这些项目。例如,不要排除具有.dit 扩展名的所有文件。Microsoft 已不能控制其他可能与这些文件使用相同的扩展名的文件。
  • Microsoft Windows 更新,或自动更新相关的文件
  • Windows 更新数据库文件或自动更新数据库文件

    注意 (Datastore.edb) 此文件位于以下目录:
    %windir%\SoftwareDistribution\Datastore
  • 事务日志文件

    注意 这些文件位于以下文件夹中:
    %windir%\SoftwareDistribution\Datastore\Logs
排除下列文件:
  • Edb*.log

    注意 通配符表示可能存在多个文件。
  • Res1.log
  • Res2.log
  • Edb.chk
  • Tmp.edb

方法 8: 重命名 SoftwareDistribution 文件夹

重命名的 Windows 更新临时 SoftwareDistribution 文件夹。为此,请执行以下步骤:
  1. 打开管理命令提示符窗口。
  2. 运行以下命令,并在每个命令之后按 Enter:
    • Net stop wuauserv
    • 光盘 %systemroot%
    • Ren SoftwareDistribution SoftwareDistribution.old
    • Net start wuauserv
  3. 请尝试再次安装更新。
重要 使用此方法时,会出现以下问题:
  • 当前下载的但,但尚未安装的更新需要通过使用 Windows Update 或 Microsoft 更新再次下载。
  • 当您删除的软件分发文件夹时,您的下载历史记录被删除。
  • 如果从 Microsoft 更新和 Windows 更新当前收到更新,必须重新选择此选项,从 Windows Update 网站。
注意 如果问题得到解决,并且您可以成功地下载并安装更新,可以安全删除 SoftwareDistribution.old 文件夹中恢复的磁盘空间。

方法 9: 清除所有当前作业的位队列

清除出位队列中的所有当前作业。为此,请执行以下步骤:
  1. 打开管理命令提示符窗口。
  2. 在命令提示符下键入以下命令,,并在每个命令之后按 Enter:
    • Net 的停止位
    • Net stop wuauserv
    • Ipconfig /flushdns
    • 光盘备份协作数据库和正在使用的 data\microsoft\network\downloader
    • Del qmgr0.dat
    • Del qmgr1.dat
    • Net start 位
    • Net start wuauserv


    注意
    完成这些步骤后,会清除位队列。
  3. 请尝试再次安装更新。

方法 10: 下载并手动安装 958056 更新

下载并手动安装 KB 958056 更新。为此,请执行以下步骤:
  1. 确定失败的更新的 Microsoft 知识库文章编号。要执行此操作,请执行下列之一: 查看错误代码信息。
    • 查看错误代码信息。
    • 从 Windows Update 网站或 Microsoft 更新网站,查看更新历史记录。为此,请执行以下步骤:
      1. 请访问下面的 Microsoft 更新 Web 站点:
        http://update.microsoft.com
      2. 在选项,单击 查看更新历史记录.
      3. 在更新列中,确定失败的更新的 Microsoft 知识库文章编号。
  2. 请访问下面的 Windows 下载 Web 站点:
    http://www.microsoft.com/windows/downloads/default.aspx
  3. 在下载的 Web 页上的搜索框中,转到类型的文章编号,您在步骤 1 中找到并单击。
    注意 当您键入的文章编号,不包括的字母"kb"。例如,键入"kb123456" 123456.
  4. 浏览返回的内容,以定位包含链接到下载的知识库文章的列表。
    注意 可能会提示您验证 Windows。如果系统提示您,按照验证 Windows,说明然后继续下载更新。
  5. 单击 下载然后单击 保存 提示当您将下载文件保存。将下载文件保存到您的桌面。
  6. 下载完成后,单击 打开 要安装此更新。
    注意 如果您的 Windows 版本不正确更新,更新安装可能会失败。

方法 11: 重命名 Pending.xml

重命名的 Pending.xml 文件。为此,请执行以下步骤:
  1. 打开管理命令提示符窗口。
  2. 在命令提示符下键入以下命令:
    takeown C:\Windows\winsxs\pending.xml /f
  3. 使用以下命令重命名的 c:\windows\winsxs\pending.xml 路径:
Ren c:\windows\winsxs\pending.xml pending.old

在 Windows 的分区方法 12: 运行 Chkdsk

运行磁盘检查 Windows 分区上。为此,请执行以下步骤:
  1. 打开管理命令提示符窗口。
  2. 在命令提示符下键入以下命令:
    Chkdsk 卷: /f /r

属性

文章编号: 2509997 - 最后修改: 2012年10月7日 - 修订: 3.0
这篇文章中的信息适用于:
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Starter
  • Windows Vista Ultimate
  • Windows 7 Enterprise
  • Windows 7 Home Basic
  • Windows 7 Home Premium
  • Windows 7 Professional
  • Windows 7 Starter
  • Windows 7 Ultimate
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Foundation
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Foundation
  • Windows Server 2008 R2 Standard
  • Windows Server 2008 Standard
关键字:?
kbmt KB2509997 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 2509997
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈