什么变成了MSXML 4.0?

时间:2009-07-02 18:15:18

标签: xml msxml msxml6

我对MSXML 4.0有所了解。

Microsoft有一个提供the CLSID and ProgIDs of various MSXML 4.0个对象的页面:

Symbolic Name: CLSID_DOMDocument40
         GUID: {88d969c0-f192-11d4-a65f-0040963251e5}
       ProgID: Msxml2.DOMDocument.4.0

Symbolic Name: CLSID_XMLSchemaCache40
         GUID: {88d969c2-f192-11d4-a65f-0040963251e5}
       ProgID: Msxml2.XMLSchemaCache.4.0

但是 ProgID CLSID 都没有在我的 Vista 计算机或同事的 XP上注册机器。

  • MSXML 4.0 仅在某个版本的Office中附带(例如 Office 2003 )?
  • 它最初是否附带 Windows XP ,但后来的服务包将其删除了?
  • 是否存在安全漏洞,并且已经已删除
  • 它是否只是被删除

我愿意转移到 MSXML 5.0 在Windows XP和Windows Vista计算机上可用 - 但我想确定我有最广泛的兼容性;我本以为MSXML 4.0比MSXML 5.0更广泛。

Microsoft做recommend that i use MSXML 6.0

  

建议您升级   从早期版本的MSXML到   MSXML 6.0。 MSXML 6.0提供安全性   和性能改进   早期的MSXML版本。

3 个答案:

答案 0 :(得分:8)

它被简单地弃用,以支持MSXML 6.0。 This blog entry from the Microsoft XML team介绍了MXSML的历史。不要让我在标题的“...在Internet Explorer”部分推迟,该页面上的历史完全独立于IE。

在该博客条目的“MSXML生命周期和历史”部分中,作者声明:

  

MSXML4是MSXML6的前身   但是还没发货过   操作系统。 MSXML6是一个   向前迈出了重要的一步   可靠性,安全性,W3C和   System.Xml兼容性,它也   支持原生64位   环境。现在我们是   在MSXML6上投入更多   和MSXML3,我们鼓励我们的   客户在可能的情况下移至6   和必要时的3。


OP编辑:重要的是要注意MSXML3在W3C决定最终XSD规范之前发布。最终,W3C使用的XSD语法与Microsoft为MSXML3创建的语法不同。 MSXML6与W3C选择的XSD方案完全兼容。

这意味着MSXML3和MSXML6彼此不兼容;和MSXML3不使用标准 XSD。

答案 1 :(得分:4)

查看问答which-version-of-msxml-should-i-use?

的简短回答是:使用MSXML6。

答案 2 :(得分:2)

MSXML4 SP3是一个包含以下亮点的备用选项:

  • 提高安全性和可靠性。有点像MSXML6!
  • 没有其他SP计划,所以如果可以,请迁移到MSXML6。
  • 根据发行说明,MSXML4 SP2支持2010年4月13日结束。

如果你真的无法离开MSXML4,SP3对你来说是个不错的选择。我也巧妙地暗示了一个更好的选择,但我不想重复自己。