<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 消費電子 > 設計應用 > ActiveX技術(shù)在B/S模式監控系統中的應用

ActiveX技術(shù)在B/S模式監控系統中的應用

——
作者: 時(shí)間:2007-09-24 來(lái)源:電子技術(shù) 收藏
隨著(zhù)Internet技術(shù)的飛速發(fā)展,利用Web服務(wù)器的信息服務(wù)能力和數據庫的數據處理能力來(lái)構造大規模的系統已成為當前人們關(guān)注的熱點(diǎn)。與此同時(shí),軟件的開(kāi)發(fā)環(huán)境和開(kāi)發(fā)技術(shù)也在不斷的變化,B/S(Browser/server)模式管理信息系統與傳統的C/S(client/server)模式管理信息系統相比,具有使用簡(jiǎn)單、維護方便、具有廣泛通用性和跨平臺性、安全性好等優(yōu)點(diǎn),因而日益受到廣大用戶(hù)的青睞。 

但是由于各個(gè)系統具體需要的不同,要建立符合工程實(shí)際情況,滿(mǎn)足用戶(hù)要求的系統,這就需要根據工程的具體情況,采用具體的技術(shù)手段來(lái)組建具有自己特色的系統。本文以基于B/S模式的監控管理系統為例,對術(shù)進(jìn)行了詳細研究。采用術(shù)和B/S模式結合的方式,實(shí)現了某大型工程高效實(shí)時(shí)的監控需求。

1 分析

1.1 B/S模式監控系統的系統架構與功能

在B/S體系結構中,用戶(hù)通過(guò)瀏覽器向分布在網(wǎng)絡(luò )上的Web服務(wù)器發(fā)出請求,Web服務(wù)器接受客戶(hù)請求,首先需執行相應的擴展應用程序執行對應的操作,然后將相應的信息返回給瀏覽器。

基于B/S模式的管理信息系統從結構上主要分為三個(gè)層次,如圖1所示:圖1B/S(Browser/Server)模式系統架構圖分別為Internet瀏覽器、Web服務(wù)器和數據庫服務(wù)器。用戶(hù)通過(guò)客戶(hù)端的Internet瀏覽器以表單或者其他形式向Web服務(wù)器發(fā)送HTTP請求,Web服務(wù)器請求數據庫服務(wù)器,并將獲得的結果以HTML頁(yè)面的形式返回給客戶(hù)端的Internet瀏覽器,供用戶(hù)查看。如圖1所示。

 

具有很多優(yōu)勢:平臺無(wú)關(guān)性;使用簡(jiǎn)單,易于擴展;減少數據庫并發(fā)用戶(hù);代碼可重用性好,易于維護。因此B/S模式逐漸成為一種流行的應用系統開(kāi)發(fā)平臺。然而B(niǎo)/S也并非完美,隨著(zhù)應用的逐步普及,B/S模式逐漸暴露了它的缺陷,如執行效率低,Web服務(wù)器負擔過(guò)重、安全性有待加強等。特別對于一些實(shí)時(shí)性要求比較高、數據量比較大的應用系統,比如實(shí)時(shí)監控遠程控制等,B/S模式無(wú)法滿(mǎn)足系統的需求。

1.2 ActiveX組件技術(shù)

ActiveX是Microsoft提出的采用COM(ComponentObject Model)和DCOM(Distributed Component ObjectModel)使軟件組件在網(wǎng)絡(luò )環(huán)境中進(jìn)行交互的一組技術(shù)集,它是在COM之上建立的一種理論和概念,與具體的編程語(yǔ)言無(wú)關(guān),包括ActiveX Dll組件和ActiveX控件。

ActiveX控件同其他的ActiveX組件相比具有以下特點(diǎn):能通過(guò)設置屬性控制其行為,從而實(shí)現用戶(hù)接口;在客戶(hù)端的瀏覽器執行,能夠緩解服務(wù)器的負荷;在有需要時(shí),還可以由應用程序調用ActiveX摔件,擴展應用程序的功能。作為針對Web應用開(kāi)發(fā)的技術(shù),ActiveX控件被廣泛應用于Web服務(wù)器以及客戶(hù)端應用的各個(gè)方面。

ActiveX控件常用的形式是.exe、.dll或.ocx的形式。通常以動(dòng)態(tài)鏈接庫形式存在,因此必須在容器中運行。ActiveX控件能夠直接嵌入到瀏覽器和其他應用程序中,并具有和應用程序一樣強大的數據處理,磁盤(pán)操作等能力。

ActiveX控件在以瀏覽器為主的結構中的作用如圖2所示。

 

ActiveX控件由三大要素組成:屬性、方法和事件。屬性是控件的基本特性,是控制的一部分,在控制裝入時(shí)或控制正在進(jìn)行時(shí)可以改變;方法是控件提供給外界的一個(gè)接口,類(lèi)似與一個(gè)函數調用接口,用戶(hù)可通過(guò)方法來(lái)設置控件的某些性質(zhì)、執行某項動(dòng)作或者進(jìn)行某些運算以實(shí)現一定的功能;事件是控件對外部操作或控件內部處于某種狀態(tài)時(shí)所發(fā)出的通知,它由控件本身所觸發(fā),并與容器進(jìn)行通信。從外界看,ActiveX控件就像一個(gè)黑盒,用戶(hù)只能看到它的三大要素,如圖3所示。 



 

要使用ActiveX控件,首先要創(chuàng )建控件實(shí)例對象,對控件進(jìn)行實(shí)例化后,對控件屬性的設置和操作就可以通過(guò)實(shí)例對象的屬性和方法來(lái)實(shí)現。ActiveX控件能在A(yíng)SP.NET頁(yè)面中通過(guò)<object>標簽創(chuàng )建,<object>標簽包含類(lèi)id(clsid),用于識別需要實(shí)例化的ActiveX控件。如下面的代碼所示:

 

<object>元素的屬性有id,classid,codebase,height,width等。

其中id的屬性值objectJK是用于唯一表示AetiveX控件的名稱(chēng),classid屬性值“clsid:49F8CFDF-6B01-4115-BAF4-D579DB51931B”是AetiveX控件在系統中唯一標識號,codebase屬性值“../ikocx.cab”是AetiveX控件的安裝文件所在的目錄,此處指位于服務(wù)器根目錄下。

控件技術(shù)的具體實(shí)現如下:當瀏覽器發(fā)出請求時(shí),Web服務(wù)器向用戶(hù)瀏覽器回傳內嵌ActiveX控件的頁(yè)面,由瀏覽器負責解釋。在解釋過(guò)程中首先用該控件的在頁(yè)面中注明的id值先在本地的注冊表內進(jìn)行查詢(xún),若已經(jīng)存在,則說(shuō)明該控件已經(jīng)在本地安裝,然后通過(guò)灃冊表中的相關(guān)信息直接使用該控件;否則就要根據頁(yè)面中所提示的該控件所在的服務(wù)器上的路徑到服務(wù)器上去下載并且自動(dòng)完成在本地的安裝注冊,使該控件成為本地資源,供以后使用。當Web服務(wù)器提供更高版本的ActiveX控件時(shí),瀏覽器會(huì )自動(dòng)下載新的摔件,并自動(dòng)安裝,覆蓋原來(lái)的控件。

2 應用實(shí)例

2.1 系統結構設計

作者參加了某大型系統工程的監控分系統的研究與開(kāi)發(fā),在系統結構的設計中,需要充分考慮系統特點(diǎn)、用戶(hù)需求和人機交互。諸如系統要完成對高速硬件設備的數據進(jìn)行采集分析,將數據處理匯報給用戶(hù);要實(shí)現在線(xiàn)監控,預警,數據庫查詢(xún)分析等功能,對上作服務(wù)器或臺式機要能遠程抓屏;住系統出現問(wèn)題之后能夠智能設置高速硬件設備和后端處理設備的各種工作參數,糾正一般性錯誤。而對于系統管理人員米講,希望能夠隨時(shí)在任何一臺終端上及時(shí)準確的了解現場(chǎng)的全部狀況。如果系統出現問(wèn)題,要迅速知曉問(wèn)題出現的環(huán)節和解決措施?;谝陨蟽煞矫娴目紤],我們采取了ActiveX組件和B/S模式結合的系統。如圖4是設計監控系統的結構框圖。

 

設計時(shí),對于事務(wù)性強,交互少,數據傳輸,數據處理量小的功能采用B/S模式,它主要是數據發(fā)布,數據庫查詢(xún)和操作。對于實(shí)時(shí)性高、刷新率快、數據處理量大的狀態(tài)顯示功能則采用了ActiveX組件嵌入瀏覽器的技術(shù),ActiveX組件直接與被監控的設備進(jìn)行通信,對數據記錄并進(jìn)行處理。對于交互性強、安全性要求高的配置部分則采用應用程序和ActiveX組件通信的方式,ActiveX組件從應用程序得到數據庫中的配置參數并進(jìn)行數據處理,配置被監控硬件設備。在被監控設備的服務(wù)端支持下,ActiveX組件還具有遠程抓屏的功能。

系統所有的工作參數都保存在數據庫服務(wù)器中,Web服務(wù)器程序和應用程序常駐內存,ActiveX組件既可以由網(wǎng)頁(yè)嵌入調用,也可以由應用程序直接調用。ActiveX組件由網(wǎng)頁(yè)嵌入調用時(shí),用戶(hù)可在任何一臺終端上實(shí)現所有的監控,由應用程序直接調用時(shí),擴展了應用程序的功能。

2.2 ActiveX組件的開(kāi)發(fā)

本文主要設計并實(shí)現了如下幾個(gè)ActiveX功能組件。

2.2.1 設備工作狀態(tài)顯示

開(kāi)發(fā)ActiveX控件時(shí)存程序中保留相應的數據接口,以便傳送控制量和接收實(shí)時(shí)數據。在本工程中,為了提高被監控設備的工作效率,被監控設備對監控查詢(xún)只需要返回原始的工作狀態(tài)信息,不需要做任何處理,對數據的處理由ActiveX控件在終端上完成。再將用戶(hù)需要的結果數據在網(wǎng)頁(yè)上通過(guò)一定形式顯示出來(lái),如數字顯示、圖形顯示、曲線(xiàn)顯示、表格顯示等。數字顯示最簡(jiǎn)單,直接把讀到的數據顯示出來(lái)就行了。圖形顯示則需用ActiveX控件將數據模擬為現實(shí)中的儀表信號燈等設備顯示出來(lái)。曲線(xiàn)顯示需用ActiveX控件將數據按一定的比例在橫坐標,縱坐標上繪制成曲線(xiàn)。表格顯示用于數據比較多時(shí),數據先在A(yíng)ctiveX控件上進(jìn)行處理,然后再通過(guò)ActiveX控件的表格顯示出來(lái)。

ActiveX組件相應的監控方法能根據系統中結點(diǎn)的變化調整顯示界面,根據系統數據流的流向分布進(jìn)行分析,設計了常見(jiàn)故障的檢測程序,在系統結點(diǎn)出現故障時(shí),能夠分析出相應的故障結點(diǎn)及原因,并發(fā)出報警信號(聲音及閃爍),并向常駐內存的服務(wù)器應用程序發(fā)出消息。

2.2.2 配置設備工作參數

當終端上的監控ActiveX控件率先檢測到系統中的問(wèn)題需要重新配置時(shí),會(huì )向服務(wù)器應用程序請求數據庫操作,如果數據庫中正在配置標志為1,則不進(jìn)行任何操作,如果標志為0,則將標志置1,然后進(jìn)行參數配置,配置完畢,狀態(tài)恢復正常后將標志恢復為0。如果用戶(hù)沒(méi)有在任何終端上監控系統的工作狀態(tài),常駐服務(wù)器內存的應用程序會(huì )調用ActiveX控件的監控方法,一直監控所有被監控設備,當系統中的工作結點(diǎn)發(fā)生變化,或檢測到硬件狀態(tài)異常時(shí),需要調用ActiveX控件對相應硬件設備進(jìn)行重新配置。

2.2.3 遠程控制功能

為了能做到在任何一臺終端上對工作服務(wù)器和臺式機的更有效的臨控,ActiveX組件實(shí)現了遠程控制這一功能。如圖5所示。

 

用戶(hù)在任何一臺終端上,可以對服務(wù)器或者臺式機進(jìn)行遠程控制,由于遠程抓屏實(shí)時(shí)性高,為了減少被監控設備的負荷,我們設計了同一臺硬件設備最多向一個(gè)終端提交遠程控制的限制,從而避免多個(gè)用戶(hù)同時(shí)操作一臺機器出現沖突和競爭。

2.3 ActiveX組件的安全性

因為ActiveX組件具有和應用程序一樣強大的功能,在Internet上,當用戶(hù)瀏覽到帶ActiveX組件的網(wǎng)頁(yè)時(shí),IE瀏覽器在自動(dòng)下載和提示用戶(hù)安裝之前,必須經(jīng)過(guò)用戶(hù)的同意及確認才可。

我們設計的ActiveX控件或插什是白行開(kāi)發(fā)的,其狀態(tài)通常是未標記為安全或足未經(jīng)簽名驗證的。由于IE瀏覽器的默認安全設置是禁止下載、運行未簽名的ActiveX控件和插件,因此客戶(hù)機必須在IE瀏覽器的安傘設置頁(yè)面中將“ActiveX控件和插件”下的相關(guān)選項設置由“禁用”改為“啟用”后,才能正常地進(jìn)行應用。

啟用下載、運行未經(jīng)簽名驗證的ActiveX控件和插件后,一些未經(jīng)簽名驗證的插件會(huì )趁虛而入,它們會(huì )在用戶(hù)瀏覽網(wǎng)頁(yè)的時(shí)候,在用戶(hù)毫不知曉的情況下自動(dòng)下載到本地計算機并加載到IE瀏覽器中。由于這些ActiveX摔件和插什未經(jīng)簽名驗證,不儀會(huì )影響系統的安全性,同時(shí)企業(yè)內部用戶(hù)在使用IE瀏覽器進(jìn)行S應用時(shí),應用調用的ActiveX控件和這些已經(jīng)自動(dòng)加載到IE瀏覽器中未經(jīng)簽名驗證的控件或插件可能發(fā)生訪(fǎng)問(wèn)沖突,造成應用異常中止。

當然,在工程內部可信賴(lài)的網(wǎng)絡(luò )環(huán)境中,這種情況發(fā)生的可能性很小,但是在系統內部感染病毒的情況下也有可能發(fā)生。如何有效地管理這些已經(jīng)加載到IE瀏覽器的未簽名ActiveX控件,同時(shí)防止系統繼續自動(dòng)下載、加載未經(jīng)簽名驗證的ActiveX摔件呢?我們可以采取以下三種方法:

禁用/刪除IE瀏覽器的加載項;分區域設置IE的安全選項,只加載來(lái)自服務(wù)器站點(diǎn)的ActiveX控件;對Windows Server 2003,我們可以使用管理域中的ActiveX控件的組策略工具。

采用上面這三種方法的任何一種之后,我們可以放心的使用我們自己設計的ActiveX控件了。但對于最新版本的Windows用戶(hù),在訪(fǎng)問(wèn)到帶ActiveX組件的頁(yè)面時(shí),IE會(huì )彈出一個(gè)提示:“單擊以激活并使用此控件”。這是因為Microsoft在2006年2月28日發(fā)布了安全通報MS06-013,討論IE的非安全更新912945。應用此更新之后,只有當用戶(hù)手動(dòng)激活其用戶(hù)界面時(shí),才能與網(wǎng)頁(yè)中加載的Microsoft ActiveX進(jìn)行交互。如果用戶(hù)不點(diǎn)擊激活,ActiveX組件就無(wú)法發(fā)揮作用。

在實(shí)際的軟件設計中,為了方便用戶(hù)使用瀏覽器來(lái)進(jìn)行監控而不需要額外的點(diǎn)擊,我們修改了使用ActiveX組件的方式。在網(wǎng)頁(yè)中使用ActiveX組件的傳統方式是:<object classid=”clsid:ActiveX組件ID號”:></object>

因為一個(gè)頁(yè)面的所有</object>的活動(dòng)內容都不會(huì )被自動(dòng)激活。我們采用外部調用JavaScript代碼的document.write方法,把JavaScript代碼和調用ActiveX控件的頁(yè)面寫(xiě)在不同的文件中。這樣雖然麻煩一些,但是不強制用戶(hù)通過(guò)點(diǎn)擊來(lái)激活控件,方便了用戶(hù)使用。

木文中將術(shù)應用于B/S監控軟件中,不僅增強了B/S監控軟件的功能,加快了軟件的開(kāi)發(fā)速度,而且適應了當前軟件開(kāi)發(fā)向模塊化、開(kāi)放化發(fā)展的趨勢,提高了系統的實(shí)時(shí)性、可靠性和可擴展性。

ActiveX技術(shù)應用于B/S模式彌補了單B/S模式的不足,比B/S和C/S結合的方式簡(jiǎn)單實(shí)用(不需要安裝C/S客戶(hù)端),可以用在商業(yè)化的在線(xiàn)殺毒,在線(xiàn)點(diǎn)播,在線(xiàn)考試等諸多領(lǐng)域,具有非常光明的應用前景。


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>