论文摘要
ActiveX控件是基于COM的通用组件,开发人员可以使用它方便地构建图形用户界面并使用其提供的类来创建各种对象,并调用该对象的属性、方法和响应该对象的事件。然而,基于Mozilla开发的Firefox浏览器尚不能运行ActiveX控件,限制了其在Internet中的应用。要实现Firefox对ActiveX控件的支持,必须解决四个问题,包括如何创建和初始化控件对象,如何在Firefox浏览器中显示和现场激活控件,如何使JavaScript能访问控件的属性和方法以及如何捕获控件事件并将其转发给JavaScript。本文在研究ActiveX控件运行机制和Firefox浏览器各种功能扩展手段的基础上,设计实现了npActiveX插件,解决了上述问题。在分析了创建控件的时机和方式后,通过HTML标签属性指定控件的创建和初始化信息。在研究了插件原理和OLE2.0容器部分的基础上,在npActiveX插件中实现了容器所需的各个接口及其方法,使容器与控件能正常交互,完成控件的显示和现场激活。通过XPCOM技术完成了JavaScript对npActiveX插件的访问,进而间接访问控件属性和方法。在研究控件事件机制的基础上完成了npActiveX插件对控件事件的捕获,并使用Mozilla平台提供的XPCOM接口将捕获到的事件转发给JavaScript。为提高操作系统的安全性,设计实现了ActiveXManager扩展。用户可在Firefox中使用该扩展查看已支持的控件及所有控件的CLSID、ProgId、版本号和安装路径,并指定要支持或禁用的控件。该扩展的界面采用XUL进行开发,底层功能由JavaScript和XPCOM组件实现。并使用Overlay技术制作了扩展安装包,将扩展集成在Firefox中。在WindowsXP操作系统下,使用Firefox浏览变电所工程组态画面,得到了较好的运行效果。使用组态画面对Firefox3.0和IE7.0的内存和CPU使用情况进行测试,比较、归纳了测试结果,分析得出在打开一定数目页面的情况下,Firefox3.0与IE7.0在系统资源使用情况方面相当,随着打开页面的增多,Firefox3.0的内存占用增长幅度小于IE7.0。
论文目录
摘要Abstract1 绪论1.1 课题背景和意义1.2 ActiveX概述1.3 Mozilla平台概述1.3.1 Mozilla的背景1.3.2 Mozilla的架构1.3.3 基于Mozilla的开发1.4 论文主要工作2 相关技术2.1 插件技术2.1.1 插件技术的原理2.1.2 插件的管理2.1.3 插件的实现方式2.1.4 浏览器插件2.2 COM、OLE与ActiveX2.2.1 OLE2.0提供的服务2.2.2 COM原理与应用2.2.3 ActiveX控件技术2.3 跨平台组件对象模型XPCOM2.3.1 XPCOM的接口2.3.2 XPCOM的标识2.3.3 XPCOM组件的结构2.3.4 XPCOM的初始化2.4 基于XML的用户界面描述语言XUL2.4.1 XUL的元素和事件处理2.4.2 XUL文件的处理过程2.4.3 XUL的运行方式2.4.4 扩展用户界面的Overlay技术2.5 本章小结3 Firefox中运行ActiveX控件3.1 Firefox运行ActiveX控件存在的问题3.2 创建和初始化ActiveX控件对象3.2.1 npActiveX插件获取创建和初始化控件对象的信息3.2.2 npActiveX插件创建控件对象的方式3.3 npActiveX插件显示和现场激活控件3.3.1 npActiveX插件显示和激活控件的过程3.3.2 npActiveX插件中容器的实现过程3.4 JavaScript访问控件的属性和方法3.4.1 基本原理3.4.2 定义插件方法3.4.3 数据类型转换3.5 捕获控件事件并通知JavaScript3.5.1 捕获控件事件3.5.2 发送事件名至JavaScript3.5.3 解决事件快速触发问题3.6 本章小结4 Firefox对ActiveX控件的管理4.1 ActiveXManager的工作原理4.2 图形界面的开发4.2.1 控件管理对话框4.2.2 控件信息对话框4.3 底层功能的开发4.3.1 AxManager组件的开发4.3.2 显示已支持的控件4.3.3 禁用控件4.3.4 支持控件4.4 ActiveXManager扩展集成到Firefox4.5 本章小结5 运行效果及性能分析5.1 组态实例5.2 运行效果5.3 系统资源使用情况5.4 本章小结结论参考文献攻读硕士学位期间发表学术论文情况致谢
相关论文文献
标签:插件论文; 控件论文; 浏览器论文;
Firefox中支持ActiveX控件运行的研究与实现
下载Doc文档