IEFrame.dll Web OCX模拟MSIE 7.0 [英] IEFrame.dll web OCX emulating MSIE 7.0

查看:62
本文介绍了IEFrame.dll Web OCX模拟MSIE 7.0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我接管了一个遗留的应用程序在C ++ / MFC中。该应用程序使用Internet Explorer OCX在显示Google Maps的对话框中托管Web窗口。 (当时Bing映射不存在。)使用CLSID
=  {8856F961-340A-11D0-A96B-00C04FD705A2}调用OCX,该映射在注册表中映射到IEFrame.dll。 OCX的navigator.userAgent返回MSIE 7.0,Google最近停止了对MSIE 7.0 JavaScript的支持,导致地图窗口因脚本错误而失败。
根据Google的说法,无论系统上安装了哪个版本的IEFrame.dll,IEFrame.dll中的OCX都会模拟MSIE 7.0。在我的情况下,IEFrame.dll版本是11.0.9600.18231。



有没有办法,也许使用一个不同的CLSID,将OCX与更新版本的JavaScript一起使用,并将自己标识为IE的更新版本?



< p style ="">你能否提出其他选择? (倾倒所有Google地图开发并重新使用Bing地图超出了我可以采取的纠正措施范围。)



谢谢




John Cramer

解决方案

set
FEATURE_BROWSER_EMULATION注册表值
app的安装程序。


Hi,

I have taken over a legacy application written in C++/MFC. The application used an Internet Explorer OCX to host a web window inside a dialog box displaying Google Maps. (Bing maps didn't exist at that time.) The OCX was invoked with CLSID = {8856F961-340A-11D0-A96B-00C04FD705A2} which is mapped in the Registry to IEFrame.dll. The navigator.userAgent for the OCX returns MSIE 7.0 and Google recently stopped support for MSIE 7.0 JavaScript causing the map window to fail with a scripting error. According to Google, the OCX in IEFrame.dll emulates MSIE 7.0 regardless of which version of IEFrame.dll is installed on the system. In my case the IEFrame.dll version is 11.0.9600.18231.

Is there a way, perhaps using a different CLSID, to use the OCX with a more recent version JavaScript and that identifies itself as a more recent version of IE?

Can you suggest any other alternatives? (Dumping all the Google maps development and starting over with Bing maps is outside the scope of what I can do for corrective action.)

Thanks


John Cramer

解决方案

set the FEATURE_BROWSER_EMULATION registry value in your app's installler.


这篇关于IEFrame.dll Web OCX模拟MSIE 7.0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆