亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

實現(xiàn)軟件升級的方法

文檔序號:81996閱讀:351來源:國知局
專利名稱:實現(xiàn)軟件升級的方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機軟件升級技術(shù),更具體地說,涉及一種實現(xiàn)軟件升級的方法。
背景技術(shù)
軟件升級主要通過客戶端/服務(wù)器(client/server,簡稱CS)的方式實現(xiàn)遠程升級,主要是將最新版本的軟件升級數(shù)據(jù)庫存放在下載服務(wù)器上,客戶端用戶通過互聯(lián)網(wǎng)采用HTTP(超連接傳輸協(xié)議)或FTP(文件傳輸協(xié)議)的方式直接從服務(wù)器上下載所需的升級數(shù)據(jù)。
目前,即時通訊軟件(Instant Messenger,簡稱IM)(如QQ/TM)客戶端的升級流程主要通過如下步驟來完成(如圖1所示)S1.消息服務(wù)器獲取即時通訊軟件客戶端的上線情況,包括該客戶端即時通訊軟件的號碼、IP地址以及版本號,然后消息服務(wù)器對需要升級的客戶端即時通訊軟件發(fā)送升級消息,提示用戶檢測到可以升級的版本,并詢問用戶是否需要升級;S2.如果用戶需要升級,則點擊確定,然后自動和信息服務(wù)器建立HTTP鏈接,從信息服務(wù)器獲取最新升級程序和對應(yīng)版本升級壓縮包的信息;S3.如果用戶的升級程序需要更新,則從下載服務(wù)器上下載最新的升級程序;然后從下載服務(wù)器下載升級壓縮包S4.客戶端本地運行升級程序,并將該升級壓縮包進行解壓縮,例如覆蓋原有文件等等。至此,即時通訊軟件升級完成。
由于目前的即時通訊軟件已經(jīng)發(fā)布了很多版本,所有往往同一時期存在數(shù)個不同版本的即時通訊軟件在客戶端運行。但由于現(xiàn)有的即時通訊軟件一般采取模塊化方式開發(fā),各個功能部分都以模塊化方式集成,因此各個模塊的開發(fā)進度以及升級版本都很難做到步調(diào)一致,統(tǒng)一將所有模塊進行升級幾乎是不可能的。如果針對不同版本、不同模塊搭建不同的服務(wù)器來解決上述問題,雖然是可行的,但是這樣勢必會造成服務(wù)器硬件資源的大量占用,降低了使用效率,同時也加大了工作人員進行升級信息修改的工作量。
因此,現(xiàn)有技術(shù)方案都存在以下缺點(1)占用的資源比較龐大,需要三種類型的服務(wù)器,降低整個系統(tǒng)的經(jīng)濟效率與使用效率;(2)對多版本支持度不夠,而且涉及到的服務(wù)器類型比較多,中間流程比較復(fù)雜,造成出現(xiàn)工作瓶頸的地方比較多,數(shù)據(jù)進行多次傳遞也往往會更容易丟失;(3)造成服務(wù)器端請求大量聚集,從而導(dǎo)致很多請求無法滿足,引起升級失敗,直接影響用戶體驗。

發(fā)明內(nèi)容本發(fā)明要解決的技術(shù)問題在于,針對現(xiàn)有技術(shù)的上述缺陷,提供一種通過客戶端軟件自動進行升級的方法,能夠簡化原有升級系統(tǒng),降低客戶端與多個服務(wù)器進行通訊的次數(shù),減少出現(xiàn)升級失敗的可能環(huán)節(jié)。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是構(gòu)造一種實現(xiàn)軟件升級的方法,該方法包括以下步驟a.判斷預(yù)定網(wǎng)頁上的腳本程序是否生成控件的對象實例;b.如果沒有生成,則提供下載鏈接并提示用戶下載,如果生成,則執(zhí)行步驟c;c.判斷調(diào)用所述生成對象實例的函數(shù)接口是否能獲取軟件的版本號,如果能獲取,則執(zhí)行步驟d,如果不能獲取,則提供下載鏈接并提示用戶下載;d.根據(jù)該版本號判斷是否需要升級,如果需要,則通過運行所述軟件的升級程序從下載服務(wù)器下載升級壓縮包。
在本發(fā)明所述的方法中,如果所述軟件沒有升級程序,所述步驟d還包括d1.提供下載鏈接并提示用戶下載升級程序;d2.接收到用戶點擊所述鏈接后下載所述升級程序,并通過運行所述升級程序從下載服務(wù)器下載升級壓縮包。
在本發(fā)明所述的方法中,在所述步驟a中,所述預(yù)定網(wǎng)頁是指嵌入能獲取軟件客戶端的版本號以及確定升級策略的腳本程序的網(wǎng)頁。
在本發(fā)明所述的方法中,在所述步驟a中,所述控件是在進行安裝軟件程序時注冊的,并在每次啟動軟件時都作重新更新注冊。
在本發(fā)明所述的方法中,在所述步驟d中,所述升級程序包括升級壓縮包下載地址、升級壓縮包的大小以及HASH值。
在本發(fā)明所述的方法中,所述步驟d還包括對從所述下載服務(wù)器所下載的升級壓縮包的大小與HASH進行校驗的步驟。
在本發(fā)明所述的方法中,,所述控件是指Activex控件。
在本發(fā)明所述的方法中,所述腳本程序是指JaveScript腳本程序。
在本發(fā)明所述的方法中,所述軟件是即時通信軟件。
本發(fā)明的有益效果是(1)能簡化原有升級系統(tǒng),降低客戶端與多個服務(wù)器進行通訊的次數(shù),減少出現(xiàn)升級失敗的可能環(huán)節(jié)。
(2)因為用戶打開網(wǎng)頁時機不同,所以可以分散用戶的升級分布,更有效率的利用服務(wù)器,緩解在特定時間過于擁擠的請求服務(wù)的問題。
(3)有的工作遷移到容易修改的web頁面來完成,這樣便于調(diào)控,方便測試,可以更迅速的完成相應(yīng)工作。
(4)不需要用戶運行客戶端軟件就可以進行升級完畢,減少用戶操作步驟。
下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中圖1是現(xiàn)有技術(shù)實現(xiàn)軟件升級流程的示例圖;圖2是本發(fā)明客戶端實現(xiàn)軟件升級的流程圖。
具體實施方式ActiveX組件技術(shù)是Microsoft對于一系列策略性面向?qū)ο蟪绦蚣夹g(shù)和工具的稱呼,其中主要的技術(shù)是組件對象模型。組件作為腳本和基于Web應(yīng)用程序的基本構(gòu)造塊,可以提供一個或多個對象以及對象的方法和屬性。ActiveX組件是一個文件,該文件包含執(zhí)行某項或一組任務(wù)的代碼,它一般被包含在動態(tài)鏈接庫(.dll)或可執(zhí)行文件(.exe)中。組件的一大優(yōu)點就是可以被大多數(shù)應(yīng)用程序再使用(這些應(yīng)用程序稱為組件容器)。一個ActiveX控件可由不同語言的開發(fā)工具開發(fā)。
JavaScript語言的前身叫作Livescript。自從Sun公司推出著名的Java語言之后,Netscape公司引進了Sun公司有關(guān)Java的程序概念,將自己原有的Livescript重新進行設(shè)計,并改名為JavaScript。JavaScript是一種基于對象和事件驅(qū)動并具有安全性能的解釋性編程語言,與HTML超文本標(biāo)識語言、Java腳本語言一起實現(xiàn)在一個網(wǎng)頁中鏈接多個對象,與網(wǎng)絡(luò)客戶交互作用,從而可以開發(fā)客戶端的應(yīng)用程序,它是通過嵌入或調(diào)入在標(biāo)準(zhǔn)的HTML語言中實現(xiàn)的??梢员粌?nèi)置于HTML頁面中由瀏覽器或客戶端機器解釋,它也可以運行在服務(wù)器端,不過出于緩解服務(wù)器的壓力,更多的應(yīng)用于客戶端機器上。下面以即時通訊軟件的升級為例進行說明,但本發(fā)明并不限于即時通訊軟件。
圖3是基于ActiveX控件和JavaScript語言實現(xiàn)即時通訊軟件升級的流程圖,如圖所示,當(dāng)客戶端瀏覽相關(guān)網(wǎng)頁(步驟200中),首先判斷網(wǎng)頁上的JavaScript程序是否生成所需要的ActiveX控件對象實例(步驟202中),如果這個對象實例無法生成,表明此客戶端不存在即時通訊軟件,這時頁面會出現(xiàn)讓用戶下載即時通訊軟件的提示信息和下載鏈接(步驟204中)。如果這個對象實例可以生成,則判斷是否能調(diào)用客戶端即時通訊軟件的Activex控件所提供的函數(shù)接口(步驟206中),該Activex控件是在即時通訊軟件安裝程序進行安裝的時候注冊的,在即時通訊軟件每次啟動時也會將本目錄下的這個動態(tài)鏈接庫重新注冊一遍,例如可表示為var cpAdder=new ActiveXObject(“external_name”),external_name為外部調(diào)用該Activex控件時所使用的文件名,cpAdder則可以調(diào)用實例所提供的函數(shù)接口cpAdder.GetLastQQVersion()來獲得即時通訊軟件版本號。如果通過這個函數(shù)接口無法獲得版本號,則表示用戶已使用的版本過久,也需要升級并提供下載鏈接和提示用戶下載(步驟208中),如果通過這個方法可以獲得版本號(步驟210中),則判斷軟件版本是否需要升級(步驟212中),如果不需要,則提示用戶已使用最新的軟件版本(步驟214中),如果需要,則根據(jù)各個版本號所對應(yīng)的升級策略,該升級策略包含有需要升級的升級程序的鏈接地址等信息,并通過將網(wǎng)頁上的style.display=″none″修改為style.display=″″來顯示出來(步驟216中),用戶根據(jù)網(wǎng)頁顯示出來的鏈接地址下載自動升級程序(步驟218中),該升級程序中已經(jīng)包含了上述升級策略中寫在信息服務(wù)器中的升級壓縮包的下載地址和升級壓縮包的尺寸大小,HASH值等信息,并點擊該升級程序進行升級,該升級程序會自動從上述下載地址下載升級壓縮包,并根據(jù)升級壓縮包的尺寸大小,HASH等值進行校驗,然后將該升級壓縮包進行解壓縮,例如覆蓋原有文件等等。升級工作完全在用戶機器上進行,至此,即時通訊軟件升級流程完成(步驟220中)。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種實現(xiàn)軟件升級的方法,其特征在于,包括以下步驟a.判斷預(yù)定網(wǎng)頁上的腳本程序是否生成控件的對象實例;b.如果沒有生成,則提供下載鏈接并提示用戶下載,如果生成,則執(zhí)行步驟c;c.判斷調(diào)用所述生成對象實例的函數(shù)接口是否能獲取軟件的版本號,如果能獲取,則執(zhí)行步驟d,如果不能獲取,則提供下載鏈接并提示用戶下載;d.根據(jù)該版本號判斷是否需要升級,如果需要,則通過運行所述軟件的升級程序從下載服務(wù)器下載升級壓縮包。
2.根據(jù)權(quán)利要求
1所述的方法,其特征在于,如果所述軟件沒有升級程序,所述步驟d還包括d1.提供下載鏈接并提示用戶下載升級程序;d2.接收到用戶點擊所述鏈接后下載所述升級程序,并通過運行所述升級程序從下載服務(wù)器下載升級壓縮包。
3.根據(jù)權(quán)利要求
1所述的方法,其特征在于,在所述步驟a中,所述預(yù)定網(wǎng)頁是指嵌入能獲取軟件客戶端的版本號以及確定升級策略的腳本程序的網(wǎng)頁。
4.根據(jù)權(quán)利要求
1所述的方法,其特征在于,在所述步驟a中,所述控件是在進行安裝軟件程序時注冊的,并在每次啟動軟件時都作重新更新注冊。
5.根據(jù)權(quán)利要求
1所述的方法,其特征在于,在所述步驟d中,所述升級程序包括升級壓縮包下載地址、升級壓縮包的大小以及HASH值。
6.根據(jù)權(quán)利要求
5所述的方法,其特征在于,所述步驟d還包括對從所述下載服務(wù)器所下載的升級壓縮包的大小與HASH進行校驗的步驟。
7.根據(jù)權(quán)利要求
4任意一項所述的方法,其特征在于,所述控件是指Activex控件。
8.根據(jù)權(quán)利要求
1所述的方法,其特征在于,所述腳本程序是指JaveScript腳本程序。
9.根據(jù)權(quán)利要求
1-8任意一項所述的方法,其特征在于,所述軟件是即時通信軟件。
專利摘要
本發(fā)明涉及一種實現(xiàn)軟件升級的方法,包括a.判斷預(yù)定網(wǎng)頁上的腳本程序是否生成控件的對象實例;b.如果沒有生成,則提供下載鏈接并提示用戶下載,如果生成,則執(zhí)行步驟c;c.判斷調(diào)用所述生成對象實例的函數(shù)接口是否能獲取軟件的版本號,如果能獲取,則執(zhí)行步驟d,如果不能獲取,則提供下載鏈接并提示用戶下載;d.根據(jù)該版本號判斷是否需要升級,如果需要,則通過運行所述軟件的升級程序從下載服務(wù)器下載升級壓縮包。本發(fā)明能簡化原有升級系統(tǒng),降低客戶端與多個服務(wù)器進行通訊的次數(shù),減少出現(xiàn)升級失敗的可能環(huán)節(jié)。
文檔編號H04L12/00GK1991757SQ200510121478
公開日2007年7月4日 申請日期2005年12月28日
發(fā)明者楊謙, 岳上 申請人:騰訊科技(深圳)有限公司導(dǎo)出引文BiBTeX, EndNote, RefMan
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1