Microsoft XML Core Services (MSXML) 4.0 Service Pack 2 的更新说明

应用对象
Windows 7 Enterprise Windows 7 Professional Windows 7 Ultimate Windows Server 2008 R2 Enterprise Windows Server 2008 R2 Datacenter Windows Server 2008 R2 Foundation Windows Server 2008 R2 Standard Windows Server 2008 Enterprise Windows Server 2008 Datacenter Windows Server 2008 Foundation Windows Server 2008 Standard Windows Server 2008 Service Pack 2 Windows Vista Enterprise Windows Vista Home Basic Windows Vista Ultimate Windows Vista Service Pack 2 Microsoft Windows XP Service Pack 2 Microsoft Windows Server 2003 Service Pack 2

BUG #: 118145 (内容维护) BUG #: 332758 (SQLBUVSTS)

症状

访问网站或运行使用 Microsoft XML Core Services (MSXML) (MSXML) 加载 XHTML 文档的应用程序时,MSXML 将请求发送到万维网联盟, (W3C) 每次提取已知文档类型定义 (DTD) 文件。 此行为可能会给 W3C 服务器带来大量流量。 有时,你可能会发现 XHTML 文件未成功加载,因为 DTD 请求被 W3C 服务器阻止。

例如,你有一个 JavaScript 文件 (.js) ,其中包含以下代码:

function pullXHtml() {
  var xml = new ActiveXObject("Msxml2.DOMDocument.4.0");
  xml.async = false;
  xml.loadXML(
    "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">" +
    "<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'><head><title>simple document</title></head>" +
    "<body><p>a simple paragraph</p></body></html>");
  if (xml.parseError.errorCode != 0) {
    var myErr = xml.parseError;
    WScript.Echo("ERROR:" + myErr.reason);
  } else {
    WScript.echo("The XHTML document was loaded successfully.");
  }
}

pullXHtml();

运行 JavaScript 文件时,该文件使用 MSXML 加载 XHTML 文档。 如果未安装此更新,如果 W3C 服务器阻止了 DTD 请求,则运行 JavaScript 文件时,可能会收到以下错误消息:

注意

错误:服务器不了解请求,或者请求无效。
处理资源时出错
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”。

安装此更新后,JavaScript 文件将成功运行,并收到以下消息:

已成功加载 XHTML 文档。注意

  • 应用此更新后,MSXML 会在本地缓存 DTD 文件,以减少发送到 W3C 服务器的请求数。

  • 安装此更新后,系统可能会提示重启计算机。

  • 如果在 Windows Vista Windows Server 2008 或 Windows 7 中安装更新,则必须以管理员身份运行安装程序文件。

  • 有关 XHTML 和文档类型定义 (DTD) 的详细信息,请参阅“更多信息”部分。

解决方法

更新信息

如何确定 MSXML 版本

若要确定计算机上安装的 MSXML 版本,请执行以下步骤:

  1. 在以下目录中找到 Msxml4.dll 文件:
    C:\Windows\System32
  2. 右键单击 Msxml4.dll 文件,然后单击“ 属性”。
  3. 单击“ 版本 ”选项卡以查看版本信息。
    注意 在 Windows Vista、Windows 7 或 Windows Server 2008 中,请改为单击“详细信息”选项卡。

如何获取此更新

此更新将通过Windows 更新自动安装。 但是,也可以通过下载相应的包来手动安装此更新。 有几个包包含此修补程序。 这些包针对以下不同的安装方案发布:

知识库文章 安装方案 更新包 MSXML 版本 支持的操作系统
973688 Microsoft XML Core Services (MSXML) 4.0 Service Pack 2 更新的说明
MSXML 4.0 由应用程序安装,或由自己手动安装。 若要应用此修补程序,必须安装 MSXML 4.0 SP2。 下载 立即下载更新包。 MSXML 4.0 SP2 Windows 7;Windows Server 2003 Service Pack 2;Windows Server 2008;Windows Server 2008 R2;Windows Server 2008 Service Pack 2;Windows Vista;Windows Vista Service Pack 1;Windows Vista Service Pack 2;Windows XP Service Pack 2;Windows XP Service Pack
973686 Microsoft MSXML Core Services 6.0 Service Pack 2 的更新说明
MSXML 6.0 由应用程序安装,或由自己手动安装。 若要应用此修补程序,必须安装 MSXML 6.0 SP2。 下载 立即下载更新包。 MSXML 6.0 SP2 Windows Server 2003 Service Pack 2;Windows XP Service Pack 2
973685 Microsoft XML Core Services (MSXML) 4.0 Service Pack 3 的更新说明
MSXML 4.0 由应用程序安装,或由自己手动安装。 若要应用此修补程序,必须安装 MSXML 4.0 SP3。 下载 立即下载更新包。 MSXML 4.0 SP3 Windows 7;Windows Server 2003 Service Pack 2;Windows Server 2008;Windows Server 2008 R2;Windows Server 2008 Service Pack 2;Windows Vista;Windows Vista Service Pack 1;Windows Vista Service Pack 2;Windows XP Service Pack 2;Windows XP Service Pack 3
973687 Microsoft MSXML Core Services 3.0 和 MSXML Core Services 6.0 更新的说明
操作系统安装了 MSXML3 和 MSXML6 下载 立即下载更新包。 MSXML 3.0 和 MSXML 6.0 Windows XP SP3
下载 立即下载更新包。 MSXML 3.0 Windows XP Professional x64 Edition
下载 立即下载更新包。 MSXML 3.0 Windows Server 2003 SP2
下载 立即下载更新包。 MSXML 3.0 Windows Server 2003 Service Pack 2 x64 Edition
下载 立即下载更新包。 MSXML 3.0 Windows Server 2003 Service Pack 2 适用于基于 Itanium 的系统
下载 立即下载更新包。 MSXML 3.0 和 MSXML 6.0 Windows Vista、Windows Vista SP1 和 Windows Vista SP2
下载 立即下载更新包。 MSXML 3.0 和 MSXML 6.0 Windows Vista 64 位版本、Windows Vista 64 位版本 SP1 和 Windows Vista SP2
下载 立即下载更新包。 MSXML 3.0 和 MSXML 6.0 Windows Server 2008 和 Windows Server 2008 SP2
下载 立即下载更新包。 MSXML 3.0 和 MSXML 6.0 Windows Server 2008 x64 Edition 和 Windows Server 2008 x64 Edition SP2
下载 立即下载更新包。 MSXML 3.0 和 MSXML 6.0 Windows Server 2008 适用于基于 Itanium 的系统和基于 Itanium 的系统 SP2 的 Windows Server 2008

 有关如何下载 Microsoft 支持文件的更多信息,请单击以下文章编号,以查看 Microsoft 知识库中相应的文章:

119591 如何从联机服务获取Microsoft支持文件,Microsoft扫描此文件中是否存在病毒。 Microsoft 使用的是文件发布时可以获得的最新病毒检测软件。 该文件存储在安全性得到增强的服务器上,以防止对文件进行未经授权的更改。

文件信息

此更新的简体中文版具有下表中列出的文件属性(或更新的文件属性)。 这些文件的日期和时间以协调世界时 (UTC) 格式列出。 在查看文件信息时,文件时间将转换为本地时间。 要了解 UTC 与本地时间之间的时差,请使用“控制面板”中“日期和时间”项中的“时区”选项卡。

对于所有受支持的基于 x86 的 Windows XP 版本,Windows Server 2003、Windows Vista、Windows Server 2008、Windows Server 2008 R2 和 Windows 7

文件名 文件版本 文件大小 日期 时间
Msxml4.dll 4.20.9876.0 1,348,432 2009 年 7 月 20 日 16:05
Msxml4a.dll 4.10.9404.0 53,768 2009 年 7 月 20 日 16:05
Msxml4r.dll 4.10.9404.0 91,656 2009 年 7 月 20 日 16:05

详细信息

有关文档类型定义的详细信息,请访问以下网站:

http://www.w3.org/TR/xhtml1/dtds.html 有关 XHTML 的详细信息,请访问以下网站:

http://www.w3.org/TR/xhtml1/ 有关 MSXML 的详细信息,请访问以下Microsoft开发人员网络网站:

http://msdn.microsoft.com/en-us/library/ms763742 (VS.85) .aspx 有关Microsoft XML 分析器 (MSXML) 版本的列表的详细信息,请单击以下序列号以查看Microsoft知识库中的文章:

269238 MICROSOFT XML 分析程序 (MSXML) 版本的269238列表

参考资料

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

954459 MS08-069:XML Core Services 6.0 安全更新说明:2008 年 11 月 11 日

 有关软件更新术语的更多信息,请单击下面的文章编号以查看 Microsoft 知识库中的相应文章:

824684
  用于描述 Microsoft 软件更新标准术语的说明