即使更新安装成功,.NET Framework 2.0 Service Pack 2、.NET Framework 3.0 Service Pack 2 或 .NET Framework 3.5 Service Pack 1 的更新也无法正确更新文件

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

本文内容

症状

安装 .NET Framework 2.0 Service Pack 2、.NET Framework 3.0 Service Pack 2 或 .NET Framework 3.5 Service Pack 1 的某些更新时,更新可能安装成功。但是,可能无法更新文件。因此,Windows Update 上可能会重新提供更新。

原因

出现此情况可能有若干个原因,如双分支服务相关的安装失败问题。2009 年 1 月到 2009 年 7 月之间,发布的多个 .NET Framework 2.0 Service Pack 2、.NET Framework 3.0 Service Pack 2 和 .NET Framework 3.5 Service Pack 1 修补程序具有缺陷。安装具有此缺陷的修补程序,然后安装安全更新时,修补程序的存在会阻止安全更新中的负载文件正确更新。在某些情况下,此问题还会以下列 Microsoft 知识库文章中描述的错误形式出现:
2262911 安装更新 982167 或 982168 之后出现异常错误“无法加载‘System.Security.Authentication.ExtendedProtection.ExtendedProtectionPolicy’类型”
Microsoft 已经删除所有包含此缺陷的修补程序,并且已经替换为没有缺陷的新修补程序。缺陷修补程序的 Microsoft 知识库文章已经更新,并列出了不具有缺陷的替换修补程序。如果您安装了此处列出的缺陷修补程序之一,请应用本文“替代方法”部分中介绍的替代方法来解决此问题。如果未应用解决方法,则可能无法正确更新安全更新的负载文件,从而导致计算机处于不一致状态且可能出现漏洞。

缺陷修补程序列表

收起该表格展开该表格
946411修复:在基于 Windows XP Service Pack 2 或 Service Pack 3 的计算机上打印 XPS 文件时,XPS 文件中的字符没有正确打印
952883修复:ASMX 服务方法(该方法包含具有内部 setter 的属性)的返回类型或 out 参数,可能未在装有 .NET Framework 的计算机上序列化
958090修复:当 System.EnterpriseServices.TransactionProxyException 异常在交易完成期间触发时,无法从其他应用程序域捕获该异常
958252修复:在使用 .NET Framework 2.0 Service Pack 1 (SP1) 中的 Msdatasetgenerator 自定义工具时,第三方 .NET 数据提供者生成代码中的缩放值和精度值不同于您设置的值
960442修复:当您使用 BinaryFormatter 对象序列化和反序列化 .NET Framework 2.0 Service Pack 2 或 .NET Framework 3.5 Service Pack 1 的程序集中的一般类型时,会收到异常错误消息
960754修复:在参阅 Transaction.Current.TransactionInformation 对象时收到 ObjectDisposedException 异常
961847修复:当您重新编译了一个基于 .NET Framework 3.5 Service Pack 1 的项目之后在设计模式下查看页面时收到错误消息:“创建控件错误 – 无法在属性‘PropertyName’上设置‘ControlInstanceName [text]’”
961864修复:在访问启用了 ASP.NET 2.0 AJAX 的网站时,Web 客户端可能会出现一些问题
961870修复:当运行需要 CLR 在 .NET Framework 2.0 Service Pack 2 中加载混合模式程序集的应用程序时出现内存泄露
961881修复:在启动 CLR 上运行的应用程序时发生访问冲突
961884修复:在更改了 App_Code 文件夹、bin 文件夹或 Global.asax 文件之后,对 ASP.NET 网站的初始请求会出现性能下降问题
961885修复:在运行调用 XslCompiledTransform.Transform 方法的 CLR 应用程序时收到访问冲突错误
961901修复:当您从基于 .NET Framework 2.0 SP2 的 Windows 窗体返回“编辑”字段时,为该“编辑”字段设置的特定 IME 模式可能会消失
961902修复:在编译包含大量应用程序资源文件的 ASP.NET 项目时收到错误消息:“‘System.NotSupportedException’类型的第一次机会异常出现在 mscorlib.dll 中”
962351修复:当您在“标准”模式下使用 Internet Explorer 8.0 查看具有动态菜单的 ASP.NET 网页时 未显示弹出 菜单
962890修复:当基于 .NET Framework 2.0 的应用程序重复调用 XmlTextReader.Read 函数时收到错误消息:“171 行上的‘Permissio’开始标记与‘PermissionRead’的结束标记不匹配”
963676修复:在使用 .NET Framework 2.0 Service Pack 2 运行应用程序时,CLR 由于致命的执行引擎错误而失败,并发生崩溃
967114修复:在基于 .NET Framework 2.0 的应用程序中使用 System.Data.DataTable.InsertRow 方法或任何其他重载方法以在表中插入行时收到错误消息:“运算操作导致溢出”
967613修复:监视事件日志项的应用程序在调用 System.Diagnostics.EventLog 类的 Dispose 方法时发生崩溃
967615修复:基于.NET Framework 2.0 SP2 或 .NET Framework 3.5 SP1 的应用程序无法正确处理由 WindowsIdentity 对象创建的安全处理对象
967812Microsoft 已提供了一个修补程序来更新斯洛伐克语、斯洛文尼亚语和土耳其语版本的 System.Globalization.RegionInfo 类中的某些属性
968108修复:Web 客户端崩溃,或者当您访问 Web 场中部署的启用了 ASP.NET 2.0 AJAX 的网站时遇到异常行为
968249修复:当您在 .NET Framework 2.0 Service Pack 2 中使用“类型库导出程序”生成来自 CLR 程序集的类型库时,会生成错误的实例大小
968392当您安装了 .NET Framework 2.0 SP2 或 .NET Framework 3.5 SP1 之后,若 ImageUrl 属性在 Visual Studio 2005 或 Visual Studio 2008 中进行了设置,超链接控件会无法正常呈现并收到错误消息:“对象引用未设置为对象的实例”
968432修复:在运行基于 .NET Framework 2.0 SP2 或 .NET Framework 3.5 SP1 的 Web 应用程序时,发生 System.InvalidOperationException 异常
968556修复:XslCompiledTransform.Transform 方法没有重载方法可同时接收 XPathNavigator 和 XmlResolver 对象作为 .NET Framework 2.0 中的参数
968760在 Microsoft .NET Framework 2.0 中,托管应用程序具有较高数值的线程句柄和事件句柄
969364修复:当您使用 Visual Web Developer 中的“生成本地资源”工具生成本地资源文件时,ASP.NET 2.0 网页中嵌入的代码块会消失
9696122009 年 4 月版 ASP.NET 2.0 修补程序汇总程序包说明
969722修复:在安装了 Microsoft .NET Framework 3.5 Service Pack 1 之后,“ASP.NET Apps v2.0.50727(__Total__)\Sessions Active”性能计数器会显示一个不合理的高数值
969836修复:基于 .NET Framework 2.0 的 Windows 窗体应用程序中的辅助线程,可能会在调用 Control.Invoke 方法(即使 GUI 线程空闲)时被阻止
970350修复:当 System.Drawing.FontConverter 对象在 .NET Framework 2.0 SP2 或 .NET Framework 3.5 SP1 中调用 FontFamily.Families 属性时收到异常错误消息:“内存不足”
970510修复:在运行基于 .NET Framework 3.5 SP1 的应用程序时,发生 TypeLoadException 异常
970924修复:当您将更多类型对象添加到 .NET Framework 2.0 SP2 中的动态汇编模块时 使用 CreateType 方法的应用程序会出现 性能下降
971030修复:在运行基于 .NET Framework 2.0 的应用程序(该应用程序具有 LCG 方法中的虚拟调用 IList<T>、IEnumerable<T> 或 ICollection<T> 界面)时发生访问冲突
971169修复:如果全局资源文件名包含区域性名称“zh-Hant” 则在您运行 ASP.NET 2.0 Web 应用程序时 收到错误消息
971601修复:当应用程序退出并重新启动时,监视应用程序的性能计数器停止响应,并且会在运行 .NET Framework 2.0 的计算机上收到 System.InvalidOperationException 异常
971988修复:当您运行基于 .NET Framework 2.0 的 Multi-AppDomain 应用程序时 (该应用程序使用的对象的终结器启动了 ThreadPool 方法) CPU 使用率明显上升
971993启用 ASP.NET Web 应用程序 的修补程序说明 该程序用于支持在使用成员资格提供程序时所获得的基于声明的标识
972259修复:当启用并发垃圾回收时 基于 .NET Framework 2.0 SP2 的程序的线程 将暂停很长一段时间
972848修复:当文件收集的信息不属于.NET Framework 2.0 中的 MiniDumpWithFullMemory 类型时 小型转储文件生成变慢并且 文件 大于预期大小
有关双分支服务的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
960043 .NET Framework 2.0 Service Pack 2、.NET Framework 3.0 Service Pack 2 和 .NET Framework 3.5 Service Pack 1 的双分支服务

替代方法

要解决此问题,请按照下列步骤操作。

步骤 1

安装修补程序 975954。若要下载 MSI 更新,请访问以下 MSDN 网页:
http://code.msdn.microsoft.com/KB975954/Release/ProjectReleases.aspx?ReleaseId=3839

步骤 2

运行产品的修复。您可以自动修复产品,也可以自行修复产品。

帮我运行修复

要自动运行产品修复,请单击“修复”按钮。然后单击“文件下载”对话框中的“运行”,再按照修复此问题向导中的步骤操作。


修复此问题
Microsoft 修复此问题 50468
注意本向导只提供英文版本。但是自动修复功能同样适用于其他语言版本的 Windows。

注意:如果操作的计算机中并未出现此问题,则可将自动修复功能保存至闪存驱动器或 CD 中,以便您可以在出现此问题的计算机中运行该功能。

我自己修复此问题

要自己修复问题,请从提升的命令提示符下键入以下适当的命令行:
  • 如果您仅安装了 .NET Framework 2.0 Service Pack 2,请运行以下命令:
    msiexec /f {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}
    此命令修复 .NET Framework 2.0 SP2 产品层。
  • 如果您安装了 .NET Framework 3.0 Service Pack 2,请运行以下命令:
    msiexec /f {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}

    msiexec /f {A3051CD0-2F64-3813-A88D-B8DCCDE8F8C7}
    这些命令修复 .NET Framework 2.0 SP2 和 .NET Framework 3.0 SP2 产品层。
  • 如果您安装了 .NET Framework 3.5 Service Pack 1,请运行以下命令:
    msiexec /f {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F}

    msiexec /f {A3051CD0-2F64-3813-A88D-B8DCCDE8F8C7}

    msiexec /f {CE2CDD62-0124-36CA-84D3-9F4DCF5C5BD9}
    这些命令修复 .NET Framework 2.0 SP2、.NET Framework 3.0 SP2 和 .NET Framework 3.5 SP1 产品层。
通过运行这些命令来修复产品层时,这将导致产品层(.NET Framework 2.0 SP2、.NET Framework 3.0 SP2 和 .NET Framework 3.0 SP1)中的所有功能重新评估其安装状态。

这可以解决错误基准程序引起的问题,并且使更新成功应用负载。

有关如何运行使用了提升权限的命令的详细信息,请访问以下 Microsoft 网页:

http://windows.microsoft.com/zh-CN/windows7/Command-Prompt-frequently-asked-questions


更多信息

有关 Windows Installer 支持的命令行开关的更多信息,请访问下面的 MSDN 网页:
命令行选项
有关 Windows Installer 的详细信息,请访问以下 MSDN 网页:
关于 Windows Installer

属性

文章编号: 2431806 - 最后修改: 2011年5月15日 - 修订: 5.0
这篇文章中的信息适用于:
  • Microsoft .NET Framework 3.5 Service Pack 1
  • Microsoft .NET Framework 3.0 Service Pack 2
  • Microsoft .NET Framework 2.0 Service Pack 2
关键字:?
kbprb kbfix kbtshoot kbexpertiseinter kbsurveynew kbinstallation kbmsifixme kbfixme KB2431806
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