【技术实现步骤摘要】
本专利技术涉及计算机网络
,具体涉及一种活动对象执行方法、系统及浏览器。
技术介绍
在打开浏览器时浏览器的页面进程会创建活动对象,而后进行页面的各项操作,所述活动对象通常指浏览器的插件,例如ActiveX插件。ActiveX插件是微软公司的IE内核浏览器支持的一种增强浏览体验的扩展接口方式,代表性的插件有Flash、百度影音、QVOD等。ActiveX插件是一种可重用的软件组件,通过使用ActiveX插件,可以很快地在网址、台式应用程序、以及开发工具中加入特殊的功能。如StockTicker插件可以用来在网页上即时地加入活动信息,动画插件可用来向网页中加入动画特性。ActiveX插件在IE浏览器的页面进程中运行时,由于ActiveX插件数量繁多,运行环境复杂,以及ActiveX插件的开放性,导致了 ActiveX插件平均质量较差,一旦ActiveX插件出现卡死或崩溃等问题,会导致整个页面退出,影响了页面操作的稳定性。反之,如果页面进程由于某种原因出现卡死或崩溃等问题,会导致页面中的ActiveX插件退出,影响了 ActiveX插件的稳定性。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的活动对象执行系统、浏览器和相应的活动对象执行方法。根据本专利技术的一个方面,提供了一种活动对象执行方法,所述活动对象为ActiveX插件对应的对象,所述方法包括在活动对象创建之前,拦截页面进程查询预创建活动对象的安全性接口,返回表示所述ActiveX插件为安全插件的信息;拦截页面进程创建活动对象的过程,创建代理对象替换实 ...
【技术保护点】
一种活动对象执行方法,所述活动对象为ActiveX插件对应的对象,所述方法包括:在活动对象创建之前,拦截页面进程查询预创建活动对象的安全性接口,返回表示所述ActiveX插件为安全插件的信息;拦截页面进程创建活动对象的过程,创建代理对象替换实际要创建的活动对象,所述代理对象在页面进程中运行;在页面进程激活所述代理对象时,在独立于页面进程的独立进程中,创建所述实际要创建的活动对象,所述活动对象在独立进程中运行;在活动对象和代理对象中分别创建通信窗口;所述活动对象和代理对象通过所述通信窗口进行通信,实现代理对象调用活动对象和/或活动对象调用代理对象;其中,所述在独立于页面进程的独立进程中创建所述实际要创建的活动对象包括:拦截独立进程查询IWebBrowser2接口,返回自创建的IWebBrowser2接口,从而创建所述实际要创建的活动对象。
【技术特征摘要】
1.一种活动对象执行方法,所述活动对象为ActiveX插件对应的对象,所述方法包括 在活动对象创建之前,拦截页面进程查询预创建活动对象的安全性接口,返回表示所述ActiveX插件为安全插件的信息; 拦截页面进程创建活动对象的过程,创建代理对象替换实际要创建的活动对象,所述代理对象在页面进程中运行; 在页面进程激活所述代理对象时,在独立于页面进程的独立进程中,创建所述实际要创建的活动对象,所述活动对象在独立进程中运行; 在活动对象和代理对象中分别创建通信窗口 ; 所述活动对象和代理对象通过所述通信窗口进行通信,实现代理对象调用活动对象和/或活动对象调用代理对象; 其中,所述在独立于页面进程的独立进程中创建所述实际要创建的活动对象包括拦截独立进程查询IWebBrowser2接口,返回自创建的IWebBrowser2接口,从而创建所述实际要创建的活动对象。2.根据权利要求1所述的方法,所述活动对象和代理对象通过所述通信窗口进行通信包括活动对象和代理对象之间的脚本执行过程。3.根据权利要求2所述的方法,所述活动对象和代理对象之间的脚本执行过程包括由代理对象执行活动对象的脚本,所述由代理对象执行活动对象的脚本的过程包括 所述活动对象通过通信窗口将脚本发送给所述代理对象; 所述活动对象通过调用所述代理对象的调度接口,获取所述脚本中待执行方法的调度标识; 所述活动对象拦截独立进程中执行所述脚本中待执行方法的指令,将所述指令发送给所述代理对象; 所述代理对象通过执行所述指令,执行所述脚本中待执行的方法,而后将执行结果返回给所述活动对象。4.根据权利要求3所述的方法,所述活动对象通过调用所述代理对象的调度接口,获取所述脚本中待执行方法的调度标识的步骤包括 所述活动对象通过调用所述代理对象的调度接口,让所述代理对象执行获取所述脚本中待执行方法的调度标识的方法,而后所述代理对象通过通信窗口将所述调度标识返回给所述活动对象。5.根据权利要求2所述的方法,所述活动对象和代理对象之间的脚本执行过程包括由活动对象执行代理对象的脚本,所述由活动对象执行代理对象的脚本的过程包括 所述代理对象通过通信窗口将脚本发送给所述活动对象; 所述代理对象通过调用所述活动对象的调度接口,获取所述脚本中待执行方法的调度标识; 所述代理对象拦截页面进程中执行所述脚本中待执行方法的指令,将所述指令发送给所述活动对象; 所述活动对象通过执行所述指令,执行所述脚本中待执行方法,而后将执行结果返回给代理对象。6.根据权利要求5所述的方法,所述代理对象通过调用所述活动对象的调度接口,获取所述脚本中待执行方法的调度标识的步骤包括 所述代理对象通过调用所述活动对象的调度接口,让所述活动对象执行获取所述脚本中待执行方法的调度标识的方法,而后所述活动对象通过通信窗口将所述调度标识返回给所述代理对象。7.根据权利要求1至6任一项所述的方法,运行于所述页面进程中的代理对象为多个,运行于所述独立进程中的活动对象为多个,所述代理对象和活动对象一一对应,所述代理对象的通信窗口和与所述代理对象对应的活动对象的通信窗口具有对应的属性,通过该两个通信窗口实现活动对象和代理对象的通信。8.根据权利要求1至7任一项所述的方法,所述ActiveX插件为百度影音或QVOD。9.一种活动对象执行...
【专利技术属性】
技术研发人员:李锦伟,贺跃松,陈志,付俣,任寰,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。