3

在发布前,我们在 Windows XP、Vista 和 Windows 7 的“全新安装”映像上测试我们的软件设置。

软件中的一些旧代码仍然依赖于 MSXML4。到目前为止,我一直认为没有必要安装 MSXML4,因为显然它已经存在于 Windows 的全新安装中。然而,现在我收到一个来自 Windows XP 用户的奇怪报告,说他的机器上缺少 MSXML4 并且我们的软件无法正常工作。

这是否意味着我们的全新安装映像不像我们想象的那么干净?还是没有 msxml4 的 Windows XP 系统是病态的异常?

4

3 回答 3

2

来自 Microsoft 的 XML 团队:在 Internet Explorer 中使用正确版本的 MSXML。它已经三年了,但仍然包含您真正需要知道的一切;此外,它不仅与 IE 相关,因为它以更通用的术语谈论不同版本的 MSXML。

来自那篇文章的快速而肮脏的答案:

MSXML 3.0 是我们首选的“后备”——它安装在从完全修补的 Win2k SP4 安装开始的每个操作系统上,因此它需要“零部署”并定期与操作系统一起维护

编辑:来自 TFA 的一些其他相关位:

MSXML3 没有 MSXML6 的所有改进,但开发人员应该认为它是一个强大且稳定的 MSXML 应用程序平台……MSXML4 是 MSXML6 的前身,但从未在操作系统中发布。

于 2009-11-10T16:43:01.307 回答
1

我的 Windows 7 x64 Pro 机器上没有 MSXML4——只有 MSXML3 和 MSXML6(虽然我不确定它们是包含在 Windows 中还是随 Office 一起提供)。由于我很确定我没有从我的 PC 中手动删除任何系统 DLL,因此我得出结论,不能依赖正在安装的 MSXML4

PS:不,MSXML6 不模拟 MSXML4...Set x = CreateObject("Msxml2.DOMDocument.4.0")在我的机器上的 Word VBA 中失败,但Set x = CreateObject("Msxml2.DOMDocument.6.0")可以工作。

于 2009-11-10T16:49:51.813 回答
0

你可以假设这是一个异常。我敢打赌,用户已经从他们的机器上删除了 MSXML,无论是有意还是无意。

也就是说,您仍应在安装时检查 MSXML4 是否存在,如果不存在则出错。

于 2009-11-10T16:42:13.850 回答