MSXML 5.0是什么? 如何安装?
发布网友
发布时间:2022-04-25 16:58
我来回答
共1个回答
热心网友
时间:2023-04-25 12:52
当你使用Plone的电脑安装了Office 2003后,用IE7打开Plone站点,IE7弹出提示“未验证的MSXML 5.0” 。
这个问题在当前的Plone2.1, 2.5 版本中都有出现,早期的版本应该也有。这是因为Plone需依赖一个叫做Sarissa外部扩展库,它在IE7中检查本地执行的XmlHttpRequest对象,而IE7 在MSXML5.0中拒绝执行XmlHttpRequest对象。所以本地安装 MSXML 5.0 (Office 2003安装了它)后,就会在IE7中弹出“未验证的MSXML 5.0”。
这主要是Kupu和LiveSearch使用了Sairissa,你可以在这里找到它们:
Procts/kupu/common/sarissa.js
Procts/validation/kupu/common/sarissa.js
Procts/validation/CMFPlone/skins/plone_3rdParty/sarissa.js
Procts/CMFPlone/skins/plone_3rdParty/sarissa.js
找到如下所示的代码:
_SARISSA_XMLHTTP_PROGID = pickRecentProgID(["Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"], [["XMLHTTP", 4]]); _SARISSA_THREADEDDOM_PROGID = pickRecentProgID(["MSXML2.FreeThreadedDOMDocument.5.0","MSXML2.FreeThreadedDOMDocument.4.0", "MSXML2.FreeThreadedDOMDocument.3.0"]); _SARISSA_XSLTEMPLATE_PROGID = pickRecentProgID(["Msxml2.XSLTemplate.5.0","Msxml2.XSLTemplate.4.0", "MSXML2.XSLTemplate.3.0"], [["XSLTPROC", 2]]);更改成如下: _SARISSA_XMLHTTP_PROGID = pickRecentProgID(["Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"], [["XMLHTTP", 4]]); _SARISSA_THREADEDDOM_PROGID = pickRecentProgID(["MSXML2.FreeThreadedDOMDocument.4.0", "MSXML2.FreeThreadedDOMDocument.3.0"]); _SARISSA_XSLTEMPLATE_PROGID = pickRecentProgID(["Msxml2.XSLTemplate.4.0", "MSXML2.XSLTemplate.3.0"], [["XSLTPROC", 2]]);这个问题应该在Plone未来的版本不会出现,Kupu也更新的新的版本,当然这个问题,如果用Kupu新版本应该也可解决,The latest release of Kupu .
参考资料:还是看这里吧。。http://czug.org/blog/zhangbingkai/ie7danchumsxml-5-0chidewenti