无法安装 Windows Vista、 Windows 7,Windows Server 2008 和 Windows Server 2008 R2 中的更新

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

本文内容

症状

当您尝试将更新安装到 Windows,您尝试安装一个 Windows 组件,或尝试安装 Microsoft 或第三方软件程序时,您会遇到一个或多个以下症状:
  • 您不能查看 Windows 角色或功能。
  • Service pack 安装将失败。
  • 当您尝试连接到 Microsoft Windows Update 网站或 Microsoft 更新网站时,Windows 更新日志 (windowsupdate.log) 中或在服务组件基于日志 (CBS.log),被记录下列错误代码之一:
    • 0xC80001FE
    • 0x80200010
    • 0x80070643
    • 0x80246002
    • 0x80070490
    • 0x80070420
    • 0x80073712
    • 0x80246007
    • : 0x8000FFFF
    • 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,然后按Enter
  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 键:
    净开始 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
    • cd %systemroot%
    • Ren SoftwareDistribution SoftwareDistribution.old
    • 净开始没有帮助的 wuauserv
  3. 请尝试再次安装更新程序。
重要使用此方法时,会出现以下问题:
  • 当前下载的但,但尚未安装的更新需要再次下载使用 Windows Update 或 Microsoft 更新。
  • 删除软件分发文件夹时,将删除您的下载历史记录。
  • 如果从 Microsoft 更新和 Windows 更新是您当前的更新,必须重新选择此选项,从 Windows Update 网站。
请注意如果问题得到解决,并且您可以成功地下载并安装更新,可以安全删除 SoftwareDistribution.old 文件夹中恢复的磁盘空间。

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

清除从位队列中移除所有当前作业。若要执行此操作,请执行以下步骤:
  1. 打开命令提示符窗口中管理。
  2. 在命令提示符下,键入以下命令,,并在每个命令之后按 enter 键:

    Net stop bits
    Net stop wuauserv
    Ipconfig /flushdns
    cd \documents and settings\all users\application data\microsoft\network\downloader
    Del qmgr0.dat
    Del qmgr1.dat
    Net start bits
    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 /f C:\Windows\winsxs\pending.xml
  3. 使用以下命令重命名 c:\windows\winsxs\pending.xml 路径:
Ren c:\windows\winsxs\pending.xml pending.old

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

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

属性

文章编号: 2509997 - 最后修改: 2014年5月29日 - 修订: 8.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
机器翻译
重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。
点击这里察看该文章的英文版: 2509997
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com