主 題 詞 軟件 網(wǎng)絡(luò) 升級 維護
引 言
目前,錄井信息遠程傳輸技術(shù)已經(jīng)在我國石油錄井行業(yè)得到廣泛的推廣應(yīng)用,并取得了較大的成就。中原油田地質(zhì)錄井處在幾年前就已經(jīng)著手進行錄井信息遠程傳輸系統(tǒng)的研制,并在近一兩年逐步在探井和開發(fā)井現(xiàn)場進行了推廣應(yīng)用。該系統(tǒng)的成功推廣和應(yīng)用為油田各級生產(chǎn)管理部門提供了及時、可靠的信息服務(wù),為生產(chǎn)管理和決策提供了有力的依據(jù),大大降低了生產(chǎn)管理成本,提高了工作效率,為實現(xiàn)數(shù)字化生產(chǎn)和網(wǎng)絡(luò)化辦公奠定了堅實的基礎(chǔ)。該系統(tǒng)的設(shè)計和應(yīng)用中,我們在前端軟件中采用了智能升級技術(shù),該技術(shù)的應(yīng)用為提高系統(tǒng)整體推廣進度以及在前端軟件維護上都起到了事半功倍的作用,節(jié)約了軟件設(shè)計和維護人員的時間,在一定程度上提高了工作效率。本文主要闡述前端智能升級模塊的設(shè)計思路和方法。
1 智能升級技術(shù)現(xiàn)狀
軟件智能升級技術(shù)是網(wǎng)絡(luò)技術(shù)迅速發(fā)展和廣泛應(yīng)用的產(chǎn)物。在互聯(lián)網(wǎng)大規(guī)模應(yīng)用之前,各類應(yīng)用軟件主要以單機模式,軟件的升級和維護需要軟件專業(yè)人員親自上門才能進行,軟件應(yīng)用的后期工作量可想而知?;ヂ?lián)網(wǎng)的快速發(fā)展衍生出了B/S(瀏覽器/服務(wù)器) 和C/S(客戶端/服務(wù)器)兩種不同模式的軟件設(shè)計方法。B/S主要以服務(wù)器端提供數(shù)據(jù)服務(wù)而在客戶端只需要用戶啟動IE瀏覽器即可進行信息瀏覽和提交,由于不需要在客戶端安裝其它額外的軟件,使用簡單等特點,所以,這種方式被稱之為瘦客戶端,并廣泛應(yīng)用于各個領(lǐng)域。而互聯(lián)網(wǎng)初期興起的C/S軟件設(shè)計模式由于需要在客戶端安裝專門的軟件(俗稱胖客戶端),并且需要人工升級和維護等方面的原因,其應(yīng)用領(lǐng)域正逐漸減小。但是,存在就有其合理性,B/S軟件設(shè)計模式雖然在客戶端很精簡,但其在功能上有很大的局限性,僅僅能夠提供服務(wù)器端發(fā)布的信息瀏覽和較簡單的信息交互功能,在一些較特殊的行業(yè)以及一些比較專業(yè)的應(yīng)用,這種方式是無法滿足需求的。
隨著網(wǎng)絡(luò)技術(shù)的快速發(fā)展和普及,已經(jīng)有越來越多的專業(yè)軟件生產(chǎn)商開始利用互聯(lián)網(wǎng)提供的有利條件對自己的軟件產(chǎn)品進行網(wǎng)絡(luò)化升級,有效提高了軟件的性能,降低了軟件維護成本。錄井信息遠傳技術(shù)是一個依托于互聯(lián)網(wǎng)的專業(yè)應(yīng)用領(lǐng)域,它所完成的工作包括錄井儀器實時數(shù)據(jù)采集、自動傳輸?shù)裙δ?,其前端用戶以前線生產(chǎn)小隊為主,分布在各個地方,人工軟件維護成本可想而知。如何有效利用網(wǎng)絡(luò)技術(shù),及時進行前端軟件升級,對前端軟件進行智能化的維護,是提高系統(tǒng)整體性能的關(guān)鍵?,F(xiàn)今軟件升級技術(shù)主要是通過網(wǎng)絡(luò)完成軟件版本的更新?lián)Q代,本技術(shù)在對前端軟件進行升級的同時,還可對前端軟件進行有效的維護,避免了由于軟件設(shè)計問題或操作問題而引起的不良后果。
2 主要思路和框架
軟件升級模塊的主要思想是通過前端系統(tǒng)與服務(wù)器端服務(wù)模塊的交互,及時獲取軟件的版本信息,從服務(wù)器下載新版軟件,替換在用的軟件并重新運行,這一過程就完成了軟件的升級過程。而由于前端軟件本身雖然能夠完成新版軟件的檢測和下載,但其無法讓下載的新軟件替換它本身并重新運行,因此,必須借助第三方的力量才能完成整個軟件的升級過程。這個第三方,我們稱之為升級和維護模塊(以下簡稱為升級模塊)。
完成新版軟件的升級和維護過程,需要涉及四方面的內(nèi)容:1、前端軟件本身;2、前端軟件升級配置文件;3、軟件升級模塊;4、新版軟件及其附屬文件。其中,前端軟件本身完成連接服務(wù)器并下載升級配置文件、檢查軟件版本的功能;升級模塊根據(jù)升級配置文件的軟件升級信息,從服務(wù)器端下載升級涉及的所有文件到本地暫存路徑,并終止當前軟件的運行,將當前軟件替換為新軟件,重新啟動當前軟件等。同時,升級模塊還可以根據(jù)升級配置文件中包含的軟件內(nèi)容信息,對軟件環(huán)境進行檢查,及時更新被改動的軟件和不完整的部分,使整個系統(tǒng)能夠始終保持版本、內(nèi)容zui完整,以此保證系統(tǒng)的正常運行。另外,即使目前不需要升級,由于病毒或其它異常情況的出現(xiàn)造成軟件系統(tǒng)不完善,操作人員可以及時利用升級模塊提供的軟件維護功能對系統(tǒng)進行完整性檢查,修補系統(tǒng)缺損部分。
3 主要工作流程
3.1 升級信息的下載和檢驗
前端軟件啟動升級功能后,首先需要從服務(wù)器端下載升級配置信息。升級配置文件是一個INI類型的文件,其包含軟件版本、需更新文件以及完整系統(tǒng)組成等信息。具體格式如下:
UpdateConfig.ini file include:
[BaseInfo> //軟件升級的基本信息
CurrentVer= //當前版本號
MainFileName= //軟件主文件名稱
AfterDownloadRun= //下載完成后運行的文件名稱
UpdateFilesNumber= //需要更新的文件數(shù)
TotalFilesNumber= //系統(tǒng)包含的總文件數(shù)
[UpdateFiles> //需要更新的文件列表
1=%Path%FileName1 //需要更新的文件名稱和路徑
2=%Path%FileName2
3=%Path%FileName3
……
[TotalFiles> //系統(tǒng)包含的所有文件列表
1=%Path%FileName1,F(xiàn)ileSize
2=%Path%FileName2,F(xiàn)ileSize
3=%Path%FileName3,F(xiàn)ileSize
……
前端軟件以HTTP協(xié)議連接服務(wù)器端(這種方式可不受網(wǎng)絡(luò)防火墻的限制),在位置下載配置文件,并讀取版本信息。得到服務(wù)器端版本號后,判斷當前軟件是否需要升級,如果需要升級,則啟動升級模塊,接下來的軟件下載和文件更新等過程工作由升級模塊完成。
3.2 軟件下載
軟件升級模塊啟動后,根據(jù)配置文件提供的文件更新列表(UpdateFiles欄的內(nèi)容),從服務(wù)器端依次將需要更新的文件下載到一個暫存目錄。文件下載過程中,對于已經(jīng)下載的每一個文件,檢查與服務(wù)器端文件大小是否對應(yīng),以便確認文件的完整性。全部需要更新的文件下載完成后,進入新版軟件的更新階段。
3.3 軟件更新
升級模塊完成服務(wù)器端文件下載過程后,首先終止舊版本軟件的運行,并檢查升級配置文件中BaseInfo的AfterDownloadRun項的內(nèi)容,如果是當前主文件名,則說明只需要停止運行主程序,并將已經(jīng)下載的所有文件按文件名稱以及所帶的路徑覆蓋原文件即可,如果AfterDownloadRun項的內(nèi)容是SETUP.EXE(安裝文件名稱,可自行設(shè)定),則說明系統(tǒng)新需要進行整體安裝后才能替換舊系統(tǒng),這時,就應(yīng)該在暫存路徑下執(zhí)行SETUP.EXE文件,開始新系統(tǒng)的安裝過程。系統(tǒng)更新完成后,啟動新軟件,終止升級模塊的運行,升級過程結(jié)束。
3.4 軟件維護
軟件維護的目的是在軟件更新完成后檢查整個應(yīng)用系統(tǒng)的完整性,或是在應(yīng)用系統(tǒng)受到意外破壞后也可以使用該功能對系統(tǒng)進行維護。軟件維護按照升級配制信息中的TotalFiles項中提供的全部文件列表進行,TotalFiles列表中,有系統(tǒng)所包含的所有文件的文件名稱和大小,升級維護模塊根據(jù)此列表對當前系統(tǒng)進行檢查,如果有文件和列表的信息不符合,說明此文件已經(jīng)不是正版軟件提供的原文件,此時就應(yīng)該從服務(wù)器重新下載需要維護的文件,然后替換現(xiàn)文件。
4 軟件設(shè)計
升級軟件的設(shè)計分兩部分完成,一是內(nèi)嵌于主程序的升級控件Update.Ocx,其功能是完成升級信息的檢測和啟動升級模塊。升級控件采用標準C語言設(shè)計成通用的ocx文件,目的是可以方便地應(yīng)用于VB、VC、DELPHI、C++BUILDER等程序設(shè)計語言編寫的軟件,與Update.exe組成一個通用的軟件升級模塊;二是獨立的升級模塊Update.exe,它的功能是由內(nèi)嵌于前端軟件中的升級控件啟動并完成軟件的升級或維護過程。Update.exe根據(jù)升級配置文件的信息,從服務(wù)器端下載需要更新的文件,并終止當前舊版本軟件的運行,將舊版軟件更新為新軟件后啟動新軟件。
5 結(jié) 論
根據(jù)以上思路設(shè)計完成的軟件智能升級和維護模塊目前已經(jīng)在錄井數(shù)據(jù)遠程傳輸前端系統(tǒng)進行推廣應(yīng)用,經(jīng)過一年多的實際應(yīng)用,結(jié)果表明,該模塊的運用減少了前端軟件的維護工作量,提升了軟件升級換代的速度。由于升級模塊以標準的ocx和exe文件組成,可同樣運用于其它軟件系統(tǒng)的升級工作中。
免責聲明
- 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://www.towegas.com。違反者本網(wǎng)將追究相關(guān)法律責任。
- 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔責任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責任。
- 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品來源,并自負版權(quán)等法律責任。
- 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
2025第十一屆中國國際機電產(chǎn)品交易會 暨先進制造業(yè)博覽會
展會城市:合肥市展會時間:2025-09-20