我们有某些 .NET 1.1 应用程序在我们的企业 XP 机器上使用 IE7 上的 MSXML4.dll 使用基于 MSXML DOCM 的 javascript 调用(即 FreeThreadedDOM、XMLHTTP、XSLT)。当我们在使用 IE9 的新 Windows 7 机器上访问这些应用程序时,javascript 在下面的每一行中都错误地显示为“自动化服务器无法创建对象”。
var _xmlhttp = new ActiveXObject("Msxml2.XMLHTTP.4.0");
var _freeThreadedDOM = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.4.0");
var _xsltTest = new ActiveXObject("Msxml2.XSLTemplate.4.0");
var _domTest = new ActiveXObject("Msxml2.DOMDocument.4.0");
因此,我们发现 IE9 ActiveX 设置只有 MXSML3 和 MSXML6 API 可用,因为这是 Microsoft 推荐的(3 是因为它广泛且高度支持,6 是因为它是最无错误和最轻量级的 MSXML dll)。
现在我们面临着一个两难选择,是降级到 3 还是升级到 6。
我想知道是否有人知道执行 MSXML 升级或降级是否安全,以及对 MSXML3 或 6 提供的功能(例如 XPATH 解析、XML 中的特殊字符、XSLT 转换、ASYCN HTTP)是否有任何影响在 javascript 等中。这与 MSXML4 有很大不同吗?
任何投入都会获得支持!:-)