插件是什么?插件间的依赖关系有什么?

插件(Plug-in,又称addin、add-in、addon或add-on,又译外挂)是一种遵循一定规范的应用程序接口编写出来的程序。其只能运行在程序规定的系统平台下(可能同时支持多个平台),而不能脱离指定的平台单独运行。因为插件需要调用原纯净系统提供的函数库或者数据。很多软件都有插件,插件有无数种。例如在IE中,安装相关的插件后,WEB浏览器能够直接调用插件程序,用于处理特定类型的文件。

机制和原理

应用软件提供使插件能够应用的各项服务,其中包括提供加载方式,使插件可以加载到应用程序和网络传输协议中,从而和插件进行数据交换。插件必须依赖于应用程序才能发挥自身功能,仅靠插件是无法正常运行的。相反地,应用程序并不需要依赖插件就可以运行,这样一来,插件就可以加载到应用程序上并且动态更新而不会对应用程序造成任何改变。1

公开应用程序接口提供一个标准的界面,允许其他人编写插件和应用程序互动。一个稳定的应用程序接口会允许 其他插件正常运行即使其最初的版本有所变动,也会支持插件延长老旧的应用程序的使用寿命。Adobe Photoshop 和After Effects的插件应用程序接口逐渐成为标准,并且被一些和它们竞争的应用程序部分采纳。另外一些象这样的应用程序接口包括Audio Units和VST。

就好比一个网络转换器也许会运载一个未被占用但不标准的端口来容纳各种任选的物理层连接器。而游戏和某些应用程序经常使用插件的体系结构来允许最初的发行者和第三方发行者增加功能性。

生产厂家可以用插件来产生卖方锁定,就是通过选择限制更新这个选项使得厂商签署的买方才可以更新使用其产品。IBM的Micro Channel Architecture,从技术上来会说,比Industry Standard Architecture更为先进,可以给IBM的个人电脑添加组成,但是因为很难给第三方的装置设备获取证明而未能大面积推广。微软的Flight Simulator系列比较著名就是因为它可以下载aircraft附件。

类别

IE

文件类型

1.*.ocx——网页浏览时能够后台自动安装、用户可能无法发觉。

2.*.dll——网页浏览时能够后台自动安装、用户可能无法发觉。

3.*.cab——网页浏览时能够后台自动安装、用户可能无法发觉。

4.*.exe——需要下载才能安装、安装权受用户控制。

5.注册表键值——有网页或程序通过控制nwscript.exe、cscript.exe、wscript.exe、regedt32.exe、regwiz.exe、regsvr32.exe、reg.exe、regini.exe、来修改注册表键值。(代表作:首页被强行修改)

不受侵害

通过防火墙保护IE浏览器及资源管理器不受插件侵害的方法:

1.限制文件类型为*.ocx、*.dll、*.cab的文件通过防火墙进入内网。(对银行、adobe等可信URL添加例外列表)

2.屏蔽调用nwscript.程序的网页代码。1

IE浏览器常见的插件例如:Flash插件、RealPlayer插件、MMS插件、MIDI五线谱插件、ActiveX插件等等;再比如Winamp的DFX,也是插件。还有很多插件都是程序员新开发的。

组件和插件的区别是,插件是属于程序接口的程序,组件在ASP中就是控件、对象,ASP/IIS的标准安装提供了11个可安装组件。ASP的FSO组件,编程的朋友都如雷贯耳吧,它就是最常用的Scripting。FileSystemObject对象。

1.什么是插件? 插件是指会随着IE浏览器的启动自动执行的程序。

2.恶意插件有什么特征? 有些插件程序能够帮助用户更方便浏览因特网或调用上网辅助功能,也有部分程序被人称为广告软件(Adware)或间谍软件(Spyware)。此类恶意插件程序监视用户的上网行为,并把所记录的数据报告给插件程序的创建者,以达到投放广告,盗取游戏或银行帐号密码等非法目的。

因为插件程序由不同的发行商发行,其技术水平也良莠不齐,插件程序很可能与其它运行中的程序发生冲突,从而导致诸如各种页面错误,运行时间错误等等现象,阻塞了正常浏览。

3.插件会从什么位置加载到IE浏览器中? 根据插件在浏览器中的加载位置,可以分为工具条(Toolbar)、浏览器辅助(BHO)、搜索挂接(URL SEARCHHOOK)、下载ActiveX(ACTIVEX)。

4.不同类型插件名词解释

①下载ActiveX(ACTIVEX):

ActiveX插件也叫做OLE控件或OCX控件,它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。在因特网上,ActiveX插件软件的特点是:一般软件需要用户单独下载然后执行安装,而ActiveX插件是当用户浏览到特定的网页时,IE浏览器即可自动下载并提示用户安装。

ActiveX插件安装的前提是必须先下载,然后经过认证,最终用户确认同意方能安装,因此嵌有ActiveX脚本程序的页面可能会变得非常慢,甚至导致浏览器瞬间失去响应。

插件管理专家2008能够屏蔽用户不需要安装的插件程序,加快页面加载速度,确保用户正常浏览。

②浏览器辅助(BHO)

BHO全称Browser Helper Object,是一种随因特网浏览器(如IE)每次启动而自动执行的小程序。通常情况下,一个BHO文件是由其它软件安装到用户的系统中的。例如一些带有下载功能的广告软件,它可能会安装一个BHO文件从而追踪用户在上网冲浪遇到的众多网页广告。

通常的BHO会帮助用户更方便地浏览因特网或调用上网辅助功能,也有一部分BHO被人称为广告软件(Adware)或间谍软件(Spyware),它们监视用户的上网行为并把记录的相关数据报告给BHO的创建者。BHO也可能会与其它运行中的程序发生冲突,从而导致诸如各种页面错误,运行时间错误等等现象,通常阻止了正常浏览的进行。

插件管理专家2008提供的BHO清理能够帮助用户查看并屏蔽被IE浏览器加载的BHO文件。

③搜索挂接(URL SEARCHHOOK)

用户在地址栏中输入非标准的网址,如英文字符或者中文的时候,当地址栏无法对输入字符串解释成功时,浏览器会自动打开一个以用户输入的字符串为搜索词的结果页面,帮助用户找到需要的内容。URLSearchhook对象就是完成搜索功能的插件。它通常是由第三方公司或者个人开发,通过插件的方式安装到浏览器上,目的是为了帮助用户更好的使用互联网。例如用户在地址栏中输入”手机”,就可以直接看到手机搜索结果。也有一些企业或者个人为了达到提高网站访问或其它商业目的,在用户不知情的情况下修改IE浏览器的URLSearchhook。

使用插件管理专家2008可以对URLSearchhook插件程序进行管理,屏蔽或者删除不需要的恶意插件。

④工具条(Toolbar)

工具条,通常指加载在浏览器的辅助工具。它位于浏览器标准工具条的下方,在IE工具栏空白处点击右键,可以查看所有已经安装的工具条,通过勾选显示或者隐藏已安装的工具条。

网站

是指网站为了增加某种功能而增加的程序文件。通常论坛程序上如phpwind,应用在SNS网站,如uchome等。

网站插件通常分为两类:

功能增强

此类通常在原有网站功能的基础上增加系统功能,以实现其他的效果,如Google Sitemaps ForZ-Blog,就是为zblog系统增加Google sitemaps功能,方便Google收录,此类插件较多,而对于不同的网站系统,有严格的插件书写要求。也有系统默认带的插件,如phpwind 的银行插件,广告插件,邀请注册插件等。

娱乐性质

此类插件主要是为了增强网站黏合度,换句话说就是留住访客。如开心网的开心农场插件,抢车位插件等娱乐型插件。此类插件能很大程度上留住访客,增加网站的流量。另外如”天使宠物for phpwind all”则是BBS上的应用插件,“黑道生涯3.0 插件for discuz!”则是应用于论坛bbs上的娱乐插件。

电子元件

概念

一种可插入(或拔出)插箱、机架、机柜的电子组件,用以直接安装电子元件、器件和机电元件,并通过连接器实现对外电气连接。它是最基本的电子组件,属于第二级组装(见电子组装级)。

插件结构

1.使用一块印制线路板的单板插件;

2.使用两块印制线路板形成夹心式或组合式插件;

3.在一块大印制线路板(母板)上立装若干块小型印制线路板(子板),称子母式插件。

在插件结构中,除印制线路板外,根据实际需要还可以安装框架、小面板、屏蔽罩及把手等结构附件。采用较多的型式是一块带印制插头的印制线路板。插件的连接器一般都是和印制线路板连成一体的印制插头(或称边缘插头)。但是,为了增加出线能力(即连接器连接点数)、可靠性和可维修性,高性能电子设备已趋向于采用二件式连接器,即有单独的插头和插座的连接器。一般连接器只装在插件的一端,为了增加连接点数,也可在插件的三边,甚至四边都装有连接器。因此,一般连接器已不适用,必须采用无插拔力连接器。插件框架可以采用薄板结构、铝型材组合结构、铝合金压铸件结构和塑压件结构。根据屏蔽要求,可以采用全封闭结构,在框架的上部、下部及两侧加屏蔽盖板,或只加部分盖板的开式结构。中国和国际电工委员会(IEC)分别在GB3047.2-82和IEC48D(秘书处)12号文件(草案)中规定了插件面板和印制线路板的基本尺寸系列。

媒体播放器插件

Winamp音频播放器、foobar2000音频播放器都支持插件,用来读取更多的音频格式、显示更多的音频文件信息〔例如编码器信息、专辑封面)。

插件

OpenCorePlugin是一个纯插件结构的系统,包括内核在内的所有特性都由插件构成。插件是对系统中静态结构方面的抽象,满足某种约束并提供自描述的物理软件模块。OSGi中插件叫Bundle,物理上是一个提供自描述文件的Jar文件。插件可以被动态的安装、激活、去激活与卸载。插件包含多个服务(Service)对象。

插件间的依赖关系包括两种:

物理依赖,即插件间的Class依赖,例如A插件Import B插件的Class。

逻辑依赖,插件A中的服务依赖插件B中的服务。

Flash

Flash插件是指安装于浏览器的Flash插件(Adobe®; Flash®; Player Plugin),使浏览器得以播放swf文件。如图为Adobe®; Flash®; Player Plugin的图标。

为增强flash的功能,有的个人和公司开发的可以安装在flash中的外挂插件(和许多软件的插件一样)。可以实现如自动保存,画特殊符号,骨骼动画等功能。

这种插件一般是以mxp结尾的文件,如ik_motion.mxp,line.mxp等等这种插件最显着的特点是可以播放AVI等多媒体数据,兼容能力相当大。插件都是其辅助作用的,网页一些视频播放都要用flash插件。

技术好处

使用插件技术能够在分析、设计、开发、项目计划、协作生产和产品扩展等很多方面带来好处:

1.结构清晰、易于理解。由于借鉴了硬件总线的结构,而且各个插件之间是相互独立的,所以结构非常清晰也更容易理解。1

2.易修改、可维护性强。由于插件与宿主程序之间通过接口联系,就像硬件插卡一样,可以被随时删除,插入和修改,所以结构很灵活,容易修改,方便软件的升级和维护。

3.可移植性强、重用力度大。因为插件本身就是由一系列小的功能结构组成,而且通过接口向外部提供自己的服务,所以复用力度更大,移植也更加方便。

4.结构容易调整。系统功能的增加或减少,只需相应的增删插件,而不影响整个体系结构,因此能方便的实现结构调整。:

5.插件之间的耦合度较低。由于插件通过与宿主程序通信来实现插件与插件,插件与宿主程序间的通信,所以插件之间的耦合度更低。

6.可以在软件开发的过程中修改应用程序。由于采用了插件的结构,可以在软件的开发过程中随时修改插件,也可以在应用程序发行之后,通过补丁包的形式增删插件,通过这种形式达到修改应用程序的目的。

7.灵活多变的软件开发方式。可以根据资源的实际情况来调整开发的方式,资源充足可以开发所有的插件,资源不充足可以选择开发部分插件,也可以请第三方的厂商开发,用户也可以根据自己的需要进行开发。

发展历史

插件的出现可以追溯到1970年代中期,当EDT文本编辑器在Univac90/60系列大型机上运行UnisysVS/9操作系统的时候,其提供了一项功能就是编辑器可以运行一个程序,并允许这个程序进入编辑器的缓冲,允许外部程序染指内存中,正在编辑的任务。插件程序使得编辑器在缓冲区上进行文本编辑,而这个缓冲是编辑器和插件所共同享用的。Waterloo Fortran编译器使用这些特性使得Fortran程序的内部编译可以用EDT编辑。

个人电脑上第一个带有插件的应用软件,也许是苹果电脑上的HyperCard和QuarkXPress,两者都是1987年发行的。

Photoshop

大海笔刷

血迹笔刷

流线笔刷

真实头发笔刷

珍珠项链笔刷

圆圈矢量笔刷

英文笔刷

眼睛笔刷

虚线笔刷

小花朵笔刷

颓废印迹笔刷

纹理系列图案

蕾丝填充图案

布纹填充图案

虚线格子填充图案

可爱花朵填充图案

古典纹理图案

可爱填充图案

横竖线条填充图案

古典背景图案

非主流效果动作

暗色调效果动作

人物美白效果动作

人物负冲效果动作

面部变亮效果动作

柔色效果动作

人物柔肤效果动作

黑白效果动作

柔化风景效果动作

人物青色调效果动作

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 787013311@qq.com 举报,一经查实,本站将立刻删除。
(0)
上一篇 2024-02-05 11:28:09
下一篇 2024-02-05 11:31:19

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注