症状
当您访问网站或运行使用 Microsoft XML Core Services (MSXML) (MSXML) 加载 XHTML 文档的应用程序时,MSXML 将向万维网联合会 (W3C) 发送请求,以便每次提取已知文档类型定义 (DTD) 文件。 此行为可能会给 W3C 服务器带来大量流量。 有时,你可能会发现 XHTML 文件未成功加载,因为 DTD 请求被 W3C 服务器阻止。
例如,你有一个 JavaScript 文件 (.js) ,其中包含以下代码:
function pullXHtml() {
var xml = new ActiveXObject("Msxml2.DOMDocument.6.0");
xml.async = false;
xml.resolveExternals = true;
xml.validateOnParse = false;
xml.setProperty("ProhibitDTD", 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 文档。 如果未安装此更新,则当 DTD 请求被 W3C 服务器阻止时,在运行 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 版本,请按照下列步骤操作:
- 在以下目录中找到 Msxml6.dll 文件:
C:\Windows\System32 - 右键单击 Msxml6.dll 文件,然后单击 “属性”。
- 单击 “版本” 选项卡以查看版本信息。
注意 在 Windows Vista、Windows 7 或 Windows Server 2008 中,请改为单击“详细信息”选项卡。
如何获取此更新
此更新将由 Windows 更新自动安装。 但是,也可以通过下载相应的程序包来手动安装此更新。 有多个程序包包含此修补程序。 这些包是针对以下不同的安装方案发布的:
| 知识库文章 | 安装方案 | 更新程序包 | MSXML 版本 | 支持的操作系统 |
|---|---|---|---|---|
|
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 |
|
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 |
有关如何下载 Microsoft 支持文件的更多信息,请单击以下文章编号,以查看 Microsoft 知识库中相应的文章:
119591 如何从联机服务获取Microsoft支持文件Microsoft扫描此文件是否有病毒。 Microsoft 使用的是文件发布时可以获得的最新病毒检测软件。 该文件存储在安全性得到增强的服务器上,以防止对文件进行未经授权的更改。
文件信息
此更新的简体中文版具有下表中列出的文件属性(或更新的文件属性)。 这些文件的日期和时间以协调世界时 (UTC) 格式列出。 在查看文件信息时,文件时间将转换为本地时间。 要了解 UTC 与本地时间之间的时差,请使用“控制面板”中“日期和时间”项中的“时区”选项卡。
对于所有受支持的基于 x86 的 Windows XP 和 Windows Server 2003 版本
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 |
|---|---|---|---|---|
| Msxml6.dll | 6.20.2003.0 | 1,415,000 | 2009 年 8 月 19 日 | 09:07 |
对于所有受支持的基于 x64 的 Windows XP 和 Windows Server 2003 版本
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 |
|---|---|---|---|---|
| Msxml6.dll | 6.20.2003.0 | 2,018,648 | 2009 年 8 月 20 日 | 03:21 |
对于所有受支持的基于 Itanium 版本的 Windows XP 和 Windows Server 2003
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 |
|---|---|---|---|---|
| Msxml6.dll | 6.20.2003.0 | 4,251,464 | 2009 年 8 月 20 日 | 02:23 |
详细信息
有关文档类型定义的更多信息,请访问以下网站:
http://www.w3.org/TR/xhtml1/dtds.html 有关 XHTML 的更多信息,请访问下面的网站:
http://www.w3.org/TR/xhtml1/ 有关 MSXML 的更多信息,请访问下面的 Microsoft Developer Network 网站:
http://msdn.microsoft.com/en-us/library/ms763742 (VS.85) .aspx 有关 Microsoft XML Parser (MSXML) 版本列表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
269238 Microsoft XML Parser (MSXML) 版本列表
参考资料
有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
954459 MS08-069:XML Core Services 6.0 安全更新说明:2008 年 11 月 11 日
有关软件更新术语的更多信息,请单击下面的文章编号以查看 Microsoft 知识库中的相应文章:
824684
用于描述 Microsoft 软件更新标准术语的说明