ActiveX,NPAPI,COM总结

来源:互联网 发布:公开课推荐 知乎 编辑:程序博客网 时间:2024/06/06 04:48

一。ActiveX和com(Component Object Model 组件对象模型)

Activex,OLE,COM都是微软的一些技术标准。Ole比较老后来发展成Activex,再后来发展成为COM OCX,DLL是扩展名。 Activex有两种扩展名OCX和DLL。实际上你可以把它们的扩暂名字调换。 COM作为ActiveX的更新技术,扩展名也有可能是DLL DLL文件还有可能是动态链接库。主要是装载一些函数,可以动态加载。com的前景 以后一种比较理想的应用程序模式就是Web化(条件是网络速度足够快),未来的软件应该不存在客户应用软件的说法了,客户就只有浏览器,浏览器就是操作系统,客户一边下载一边使用,当然下载的都是一个个功能独立的模块。而这些功能独立的模块就是com组件,一般的dll是不能这么用的。

二。npapi(Netscape Plugin Application Programming Interface)网景插件应用程序编程接口和ppapi

插件,即plugin,一般是一个dll文件,不依靠chrome提供api,所以一般可实现更多功能,往往是直接调用外部程序的,权限很大,一旦出现恶意程序,用户账户的风险就很大了
插件类型分为npapi和ppapi两种,npapi的安全性相对较差,chrome将基本禁用npapi的插件
扩展,即extension,是基于chrome的api接口实现功能的,所以有些api没有提供的接口功能就无法实现了,一般权限点对较小,而且现在chrome已经不允许安装非商店的扩展了

三。组件有点

组件架构的一个优点就是应用可以随时间的流逝而发展进化

使用组件还有一些可以使对已有应用的升级更加方便和灵活的优点,如应用的定制,组件库以及分布式组件等。

使用组件的种种优点直接来源于可以将它们动态的插入或卸出应用。为了实现这种功能,所有的组件必须满足两个条件:第一,组件必须动态链接;第二,它们必须隐藏(或封装)其内部实现细节。动态链接对于组件而言是一个至关重要的要求,而消息隐藏则是动态链接的一个必要条件、

四。com组件相关信息

COM组件是以WIN32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行代码组成

COM组件是一些小的二进制可执行文件

COM组件可以给应用程序、操作系统以及其他组件提供服务

自定义的COM组件可以在运行时刻同其他组件连接起来构成某个应用程序

COM组件可以动态的插入或卸出应用

COM组件必须是动态链接的

COM组件必须隐藏(封装)其内部实现细节

COM组件必须以二进制的形式发布

COM组件必须可以在不妨碍已有用户的情况下被升级

COM组件不是DLL,只是利用DLL来给组件提供动态链接的能力




原创粉丝点击