外掛程式

外掛程式

外掛程式(Plug-in,又稱addin、add-in、addon或add-on,又譯外掛)是一種遵循一定規範的應用程式接口編寫出來的程式。其只能運行在程式規定的系統平台下(可能同時支持多個平台),而不能脫離指定的平台單獨運行。因為外掛程式需要調用原純淨系統提供的函式館或者數據。很多軟體都有外掛程式,外掛程式有無數種。例如在IE中,安裝相關的外掛程式後,WEB瀏覽器能夠直接調用外掛程式程式,用於處理特定類型的檔案。外掛程式的定位是開發實現原純淨系統平台、套用軟體平台不具備的功能的程式,其只能運行在程式規定的系統平台下(可能同時支持多個平台),而不能脫離指定的平台單獨運行。因為外掛程式需要調用原純淨系統提供的函式館或者數據。

基本介紹

  • 中文名:外掛程式
  • 外文名:Plug-in,
  • 別稱:addin、add-in、addon或add-on
  • 類別:程式
發展歷史,機制和原理,類別,IE,網站,電子元件,Flash,技術好處,Photoshop,

發展歷史

外掛程式的出現可以追溯到1970年代中期,當EDT文本編輯器在Univac90/60系列大型機上運行UnisysVS/9作業系統的時候,其提供了一項功能就是編輯器可以運行一個程式,並允許這個程式進入編輯器的緩衝,允許外部程式染指記憶體中,正在編輯的任務。外掛程式程式使得編輯器在緩衝區上進行文本編輯,而這個緩衝是編輯器和外掛程式所共同享用的。Waterloo Fortran編譯器使用這些特性使得Fortran程式的內部編譯可以用EDT編輯。
個人電腦上第一個帶有外掛程式的套用軟體,也許是蘋果電腦上的HyperCard和QuarkXPress,兩者都是1987年發行的。

機制和原理

套用軟體提供使外掛程式能夠套用的各項服務,其中包括提供載入方式,使外掛程式可以載入到應用程式和網路傳輸協定中,從而和外掛程式進行數據交換。外掛程式必須依賴於應用程式才能發揮自身功能,僅靠外掛程式是無法正常運行的。相反地,應用程式並不需要依賴外掛程式就可以運行,這樣一來,外掛程式就可以載入到應用程式上並且動態更新而不會對應用程式造成任何改變。
公開應用程式接口提供一個標準的界面,允許其他人編寫外掛程式和應用程式互動。一個穩定的應用程式接口會允許 其他外掛程式正常運行即使其最初的版本有所變動,也會支持外掛程式延長老舊的應用程式的使用壽命。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.exe、cscript.exe、wscript.exe、regedt32.exe、regwiz.exe、regsvr32.exe、reg.exe、regini.exe程式的網頁代碼
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也可能會與其它運行中的程式發生衝突,從而導致諸如各種頁面錯誤,運行時間錯誤等等現象,通常阻止了正常瀏覽的進行。
③搜尋掛接(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上的娛樂外掛程式。

電子元件

概念
一種可插入(或拔出)插箱、機架、機櫃的電子組件,用以直接安裝電子元件、器件和機電元件,並通過連線器實現對外電氣連線。它是最基本的電子組件,屬於第二級組裝(見電子組裝級)。
外掛程式結構
①使用一塊印製線路板的單板外掛程式;
②使用兩塊印製線路板形成夾心式或組合式外掛程式;
③在一塊大印製線路板(母板)上立裝若干塊小型印製線路板(子板),稱子母式外掛程式。
在外掛程式結構中,除印製線路板外,根據實際需要還可以安裝框架、小面板、禁止罩及把手等結構附屬檔案。採用較多的型式是一塊帶印製插頭的印製線路板。外掛程式的連線器一般都是和印製線路板連成一體的印製插頭(或稱邊緣插頭)。但是,為了增加出線能力(即連線器連線點數)、可靠性和可維修性,高性能電子設備已趨向於採用二件式連線器,即有單獨的插頭和插座的連線器。一般連線器只裝在外掛程式的一端,為了增加連線點數,也可在外掛程式的三邊,甚至四邊都裝有連線器。因此,一般連線器已不適用,必須採用無插拔力連線器。外掛程式框架可以採用薄板結構、鋁型材組合結構、鋁合金壓鑄件結構和塑壓件結構。根據禁止要求,可以採用全封閉結構,在框架的上部、下部及兩側加禁止蓋板,或只加部分蓋板的開式結構。中國和國際電工委員會(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)結構清晰、易於理解。由於借鑑了硬體匯流排的結構,而且各個外掛程式之間是相互獨立的,所以結構非常清晰也更容易理解。
(2)易修改、可維護性強。由於外掛程式與宿主程式之間通過接口聯繫,就像硬體插卡一樣,可以被隨時刪除,插入和修改,所以結構很靈活,容易修改,方便軟體的升級和維護。
(3)可移植性強、重用力度大。因為外掛程式本身就是由一系列小的功能結構組成,而且通過接口向外部提供自己的服務,所以復用力度更大,移植也更加方便。
(4)結構容易調整。系統功能的增加或減少,只需相應的增刪外掛程式,而不影響整個體系結構,因此能方便的實現結構調整。:
(5)外掛程式之間的耦合度較低。由於外掛程式通過與宿主程式通信來實現外掛程式與外掛程式,外掛程式與宿主程式間的通信,所以外掛程式之間的耦合度更低。
(6)可以在軟體開發的過程中修改應用程式。由於採用了外掛程式的結構,可以在軟體的開發過程中隨時修改外掛程式,也可以在應用程式發行之後,通過補丁包的形式增刪外掛程式,通過這種形式達到修改應用程式的目的。
(7)靈活多變的軟體開發方式。可以根據資源的實際情況來調整開發的方式,資源充足可以開發所有的外掛程式,資源不充足可以選擇開發部分外掛程式,也可以請第三方的廠商開發,用戶也可以根據自己的需要進行開發。

Photoshop

大海筆刷
血跡筆刷
流線筆刷
真實頭髮筆刷
珍珠項鍊筆刷
圓圈矢量筆刷
英文筆刷
眼睛筆刷
虛線筆刷
小花朵筆刷
頹廢印跡筆刷
紋理系列圖案
蕾絲填充圖案
布紋填充圖案
虛線格子填充圖案
可愛花朵填充圖案
古典紋理圖案
可愛填充圖案
橫豎線條填充圖案
古典背景圖案
非主流效果動作
暗色調效果動作
人物美白效果動作
人物負沖效果動作
面部變亮效果動作
柔色效果動作
人物柔膚效果動作
黑白效果動作
柔化風景效果動作
人物青色調效果動作

相關詞條

熱門詞條

聯絡我們