• / 25
  • 下載費用:30 金幣  

升級軟件和運行軟件的方法及裝置.pdf

關 鍵 詞:
升級 軟件 運行 方法 裝置
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
摘要
申請專利號:

CN201310719813.1

申請日:

2013.12.23

公開號:

CN103677937A

公開日:

2014.03.26

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效IPC(主分類):G06F 9/445申請日:20131223|||公開
IPC分類號: G06F9/445; G06F17/30 主分類號: G06F9/445
申請人: 騰訊科技(深圳)有限公司
發明人: 歐瑞清; 萬茂武; 羅學成
地址: 518044 廣東省深圳市福田區振興路賽格科技園2棟東403室
優先權:
專利代理機構: 北京品源專利代理有限公司 11332 代理人: 胡彬
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201310719813.1

授權公告號:

||||||

法律狀態公告日:

2017.02.08|||2014.04.23|||2014.03.26

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

本發明公開了一種升級軟件和運行軟件的方法及裝置,方法包括:獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;將獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域;修改所述軟件的配置文件,所述配置文件由所述軟件安裝時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。通過將升級文件存儲到終端系統中除敏感區域以外的區域中,并修改運行軟件所需的配置文件,降低了升級軟件的復雜度。

權利要求書

權利要求書
1.  一種升級軟件的方法,其特征在于,包括:
獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
將獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域;
修改所述軟件的配置文件,所述配置文件由所述軟件安裝時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。

2.  根據權利要求1所述的方法,其特征在于,將獲取的所述升級文件存儲到所述終端系統的第二區域,包括:
識別所述升級文件是否為業務模塊文件或業務包文件,所述業務包文件包括業務模塊入口文件及運行所述軟件所需的所有業務模塊文件;
當所述升級文件為業務模塊文件時,將所述業務模塊文件存儲到所述第二區域;
當所述升級文件為業務包文件時,將所述業務包文件存儲到所述第二區域的升級版本文件夾中,所述升級版本文件夾的版本與所述業務包文件的版本相對應。

3.  根據權利要求1或2所述的方法,其特征在于,將獲取的所述升級文件存儲到所述終端系統的第二區域,包括:
將所述升級文件,存儲到所述終端系統的系統目錄中的應用程序數據appdata目錄中。

4.  根據權利要求1所述的方法,其特征在于,修改所述軟件的配置文件,包括:
當所述升級文件為業務模塊文件時,在所述配置文件中,將所述業務模塊文件升級前的存儲路徑信息及版本信息,替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
當所述升級文件為業務包文件時,在所述配置文件中,將所述業務包文件升級前的存儲路徑信息及版本信息替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息及二者之間的對應關系,所述業務包文件包括業務模塊入口文件及運行所述軟件所需的所有業務模塊文件。

5.  一種運行軟件的方法,其特征在于,包括:
接收用于啟動軟件的啟動指令;其中,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
在所述啟動指令的觸發下,讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,所述配置文件由所述軟件安裝時生成于第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。

6.  根據權利要求5所述的方法,其特征在于,所述軟件的業務文件為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的安裝版本,所述業務包文件的安裝版本存儲于所述第一區域中的安裝版本文件夾中;
所述配置文件中的存儲路徑信息為所述業務包文件的安裝版本的存儲路徑信息;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所 述軟件的業務文件的最新版本,包括:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述安裝版本文件夾中的業務模塊入口文件;其中,所述軟件的版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件;
通過運行啟動的所述安裝版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊文件,加載所述安裝版本文件夾中的業務模塊文件。

7.  根據權利要求5所述的方法,其特征在于,所述軟件的業務文件為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的升級版本,所述業務包文件的升級版本存儲于所述第二區域中的升級版本文件夾中;
所述配置文件中的存儲路徑信息為所述業務包文件的升級版本的存儲路徑信息;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,包括:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述升級版本文件夾中的業務模塊入口文件;其中,所述版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件和安裝版本文件夾,所述安裝版本文件夾中包括所述業務包文件的安裝版本;
通過運行啟動的所述升級版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊 文件,加載所述升級版本文件夾中的業務模塊文件。

8.  根據權利要求7所述的方法,其特征在于,所述配置文件中還包含所述業務包文件的升級版本的版本信息、所述業務包文件的升級版本的版本信息與所述業務包文件的升級版本的存儲路徑信息之間的對應關系、以及所述業務包文件的安裝版本的存儲路徑信息、版本信息及二者之間的對應關系;
根據所述配置文件中的存儲路徑信息啟動所述升級版本文件夾中的業務模塊入口文件,包括:
通過調用所述版本選擇器,按照最新版本優先的原則,選擇調用所述業務包文件的升級版本的版本信息對應的存儲路徑信息指向的所述升級版本文件夾中的業務模塊入口文件。

9.  根據權利要求5所述的方法,其特征在于,所述軟件的業務文件為業務模塊文件的安裝版本,所述業務模塊文件的安裝版本存儲于所述第一區域;
所述配置文件中包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,包括:
通過調用所述軟件的業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,加載所述業務模塊文件的安裝版本。

10.  根據權利要求5所述的方法,其特征在于,所述軟件的業務文件為業務模塊文件的升級版本,存儲于所述第二區域;
所述配置文件中包含所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,包括:
通過調用所述業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。

11.  根據權利要求10所述的方法,其特征在于,所述配置文件還包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
根據所述業務模塊入口文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本,包括:
通過調用所述業務模塊入口文件,按照最新版本優先的原則,并根據存儲路徑信息、版本信息、文件信息及三者之間的對應關系,選擇調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。

12.  根據權利要求7、8、10-11任一項所述的方法,其特征在于,所述升級版本位于所述終端系統的系統目錄下的應用程序數據appdata目錄中。

13.  一種升級軟件的裝置,其特征在于,包括:
文件獲取單元,用于獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
存儲執行單元,用于將所述文件獲取單元獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的 區域;
修改單元,用于修改所述軟件的配置文件,所述配置文件由所述軟件安裝時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。

14.  根據權利要求13所述的裝置,其特征在于,所述存儲執行單元包括:
文件識別子單元,用于識別所述升級文件是否為業務模塊文件或業務包文件,所述業務包文件包括業務模塊入口文件及運行所述軟件所需的所有業務模塊文件;
存儲執行子單元,用于當所述升級文件為業務模塊文件時,將所述業務模塊文件存儲到所述第二區域;當所述升級文件為業務包文件時,將所述業務包文件存儲到所述第二區域的升級版本文件夾中,所述升級版本文件夾的版本與所述業務包文件的版本相對應。

15.  根據權利要求13或14所述的裝置,其特征在于,所述存儲執行單元具體用于:
將所述升級文件,存儲到所述終端系統的系統目錄中的應用程序數據appdata目錄中。

16.  根據權利要求13所述的裝置,其特征在于,所述修改單元具體用于:
當所述升級文件為業務模塊文件時,在所述配置文件中,將所述業務模塊文件升級前的存儲路徑信息及版本信息,替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
當所述升級文件為業務包文件時,在所述配置文件中,將所述業務包文件升級前的存儲路徑信息及版本信息替換為所述升級文件的存儲路徑信息及版本 信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息及二者之間的對應關系,所述業務包文件包括業務模塊入口文件及運行所述軟件所需的所有業務模塊文件。

17.  一種運行軟件的裝置,其特征在于,包括:
指令接收單元,用于接收用于啟動軟件的啟動指令;其中,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
軟件運行單元,用于在所述啟動指令的觸發下,讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,所述配置文件由所述軟件安裝時生成于第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。

18.  根據權利要求17所述的裝置,其特征在于,所述軟件的業務文件為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的安裝版本,所述業務包文件的安裝版本存儲于所述第一區域中的安裝版本文件夾中;
所述配置文件中的存儲路徑信息為所述業務包文件的安裝版本的存儲路徑信息;
所述軟件運行單元具體用于:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述安裝版本文件夾中的業務模塊入口文件;其中,所述軟件的版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件;
通過運行啟動的所述安裝版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊文件,加載所述安裝版本文件夾中的業務模塊文件。

19.  根據權利要求17所述的裝置,其特征在于,所述軟件的業務文件為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的升級版本,所述業務包文件的升級版本存儲于所述第二區域中的升級版本文件夾中;
所述配置文件中的存儲路徑信息為所述業務包文件的升級版本的存儲路徑信息;
所述軟件運行單元具體用于:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述升級版本文件夾中的業務模塊入口文件;其中,所述版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件和安裝版本文件夾,所述安裝版本文件夾中包括所述業務包文件的安裝版本;
通過運行啟動的所述升級版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊文件,加載所述升級版本文件夾中的業務模塊文件。

20.  根據權利要求19所述的裝置,其特征在于,所述配置文件中還包含所述業務包文件的升級版本的版本信息、所述業務包文件的升級版本的版本信息與所述業務包文件的升級版本的存儲路徑信息之間的對應關系、以及所述業務包文件的安裝版本的存儲路徑信息、版本信息及二者之間的對應關系;
所述軟件運行單元具體用于:
通過調用所述版本選擇器,按照最新版本優先的原則,選擇調用所述業務包文件的升級版本的版本信息對應的存儲路徑信息指向的所述升級版本文件夾中的業務模塊入口文件。

21.  根據權利要求17所述的裝置,其特征在于,所述軟件的業務文件為業務模塊文件的安裝版本,所述業務模塊文件的安裝版本存儲于所述第一區域;
所述配置文件中包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
所述軟件運行單元具體用于:
通過調用所述軟件的業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,加載所述業務模塊文件的安裝版本。

22.  根據權利要求17所述的裝置,其特征在于,所述軟件的業務文件為業務模塊文件的升級版本,存儲于所述第二區域;
所述配置文件中包含所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
所述軟件運行單元具體用于:
通過調用所述業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。

23.  根據權利要求22所述的裝置,其特征在于,所述配置文件還包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的 對應關系;
所述軟件運行單元具體用于:
通過調用所述業務模塊入口文件,按照最新版本優先的原則,并根據存儲路徑信息、版本信息、文件信息及三者之間的對應關系,選擇調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。

24.  根據權利要求19、20、22-23任一項所述的方法,其特征在于,所述升級版本位于所述終端系統的系統目錄下的應用程序數據appdata目錄中。

說明書

說明書升級軟件和運行軟件的方法及裝置
技術領域
本發明涉及計算機技術,尤其涉及一種升級軟件和運行軟件的方法及裝置。
背景技術
軟件開發者在編寫某一軟件時,往往會考慮不全面而導致該軟件的功能不完善。為彌補這個缺陷,在該軟件發行后,還會對程序進行修改或在該軟件中加入新的功能,形成該軟件的升級版本,供用戶升級。
現有技術中,軟件升級時,首先把升級文件從網絡側下載到本地,然后提示用戶有版本升級。如果用戶選擇升級,則終端強殺正在運行的程序,把下載到本地的升級文件復制到安裝目錄下,實現升級。
但是,對于安全性較高的終端操作系統,如引入了UAC(User Account Control,用戶帳戶控制)技術的Windows Vista、Win7等系統,要求用戶在執行可能會影響計算機運行的操作或執行更改影響其他用戶的設置的操作之前,提供權限或管理員密碼。而現有技術中程序升級過程中將本地的升級文件復制到安裝目錄下,可能會影響計算機運行的操作,因此,在系統執行復制操作之前,需要UAC認證,提示用戶對升級操作進行確認,而這不利于降低軟件升級的復雜度。
發明內容
本發明的目的在于提出一種升級軟件和運行軟件的方法及裝置,以降低軟件升級的復雜度。
為達此目的,本發明采用以下技術方案:
一種升級軟件的方法,包括:
獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
將獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域;
修改所述軟件的配置文件,所述配置文件由所述軟件安裝時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。
一種運行軟件的方法,包括:
接收用于啟動軟件的啟動指令;其中,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
在所述啟動指令的觸發下,讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,所述配置文件由所述軟件安裝時生成于第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。
一種升級軟件的裝置,包括:
文件獲取單元,用于獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
存儲執行單元,用于將所述文件獲取單元獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域;
修改單元,用于修改所述軟件的配置文件,所述配置文件由所述軟件安裝 時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。
一種運行軟件的裝置,包括:
指令接收單元,用于接收用于啟動軟件的啟動指令;其中,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
軟件運行單元,用于在所述啟動指令的觸發下,讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,所述配置文件由所述軟件安裝時生成于第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。
上述升級軟件的方法及裝置,通過將升級文件存儲到終端系統中除敏感區域以外的區域中,并修改運行軟件所需的配置文件,使得升級軟件過程完全無需用戶參與,降低了升級軟件的復雜度,達到了快速發布軟件版本的目的。
上述運行軟件的方法及裝置,通過在啟動時讀取配置文件,利用配置文件中提供的存儲路徑信息加載軟件的業務文件的最新版本,使得當軟件通過上述升級軟件的方法升級后,軟件啟動時調用業務文件的最新版本,直接運行升級版本,提高了軟件運行的靈活性和多樣性。
附圖說明
圖1為本發明實施例提供的一種升級軟件的方法的流程圖;
圖2為本發明實施例提供的一種運行軟件的方法的流程圖;
圖3為本發明實施例提供的運行軟件的方法中軟件安裝時生成的一種目錄結構示意圖;
圖4為本發明實施例提供的運行軟件的方法中軟件安裝時生成的另一種目 錄結構示意圖;
圖5為本發明實施例提供的升級和運行軟件的方法中QTalk軟件安裝時生成的一種目錄結構示意圖;
圖6為本發明實施例提供的升級和運行軟件的方法中QTalk軟件安裝時生成的另一種目錄結構示意圖;
圖7為本發明實施例提供的升級和運行軟件的方法中QTalk軟件升級后的運行流程示意圖;
圖8為本發明實施例提供的一種升級軟件的裝置的結構示意圖;
圖9為本發明實施了提供的一種運行軟件的裝置的結構示意圖。
具體實施方式
下面結合附圖并通過具體實施方式來進一步說明本發明的技術方案。
圖1為本發明實施例提供的一種升級軟件的方法的流程圖。如圖1所示,升級軟件的方法包括:
步驟11、獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要UAC認證的敏感區域。
假設操作系統采用了UAC技術的終端中安裝了某一軟件,該軟件安裝在程序文件(program files)目錄中,屬于終端系統中需要UAC認證的敏感區域。
一般來說,涉及到訪問系統磁盤的根目錄(例如C:\),訪問Windows目錄、Windows系統目錄和Program Files目錄,訪問Windows安全信息以及讀寫系統登錄數據庫(Registry)等程序訪問動作,都需要通過UAC的認證,被訪問的區域即上述第一區域。
當該軟件可升級時,說明在網絡側已經有升級文件供用戶下載升級。升級程序升級該軟件時,可自行從網絡側獲取該軟件的升級文件,而無需用戶參與。
其中,升級文件可以是單獨的業務模塊文件如業務模塊a.dll,也可以是業務包文件,即包含業務模塊入口文件和運行該軟件所需的所有業務模塊文件。假設上述軟件通過上述升級文件升級后運行所需的相關業務文件包括S.exe、業務模塊1.dll、業務模塊2.dll、…、業務模塊n.dll,則可將S.exe、業務模塊1.dll、業務模塊2.dll、…、業務模塊n.dll壓縮在一起,形成業務包文件。
步驟12、將獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。
例如,升級程序自行將從網絡側獲取的升級文件存儲到所述終端系統的第二區域,完成升級文件的下載。可以看到,由于升級文件存儲在第二區域,因此,該存儲操作無需UAC認證,即無需用戶授權。也就是說,下載過程采用靜默方式,無需用戶參與。
步驟13、修改所述軟件的配置文件,所述配置文件由所述軟件安裝時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。
本實施例中,軟件在安裝時還會產生一個配置文件,該配置文件中可以如表1所示存儲不同業務模塊文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,也可以如表2所示存儲同一業務模塊文件的不同版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,還可以如表3所示存儲業務包文件的最新版本的存儲路徑信息及版本信息,還可以如表4所示存儲業務包文件的不同版本的存儲路徑信息、版本信息及二者之間的對應關系。
表1
業務模塊文件名存儲路徑版本
業務模塊1.dlld:\download3.1業務模塊2.dlld:\download2.1業務模塊n.dlle:\download3.1
表1中,沒有相同的業務模塊文件,每個業務模塊文件的版本都是自身最新的版本。由于軟件升級到最新版本時,有的業務模塊文件可延用前一版本如業務模塊2.dll,因此,假設對應的軟件的最新版本為3.1,則該軟件的3.1版本運行時加載的業務模塊2.dll的最新版本為2.1,加載業務模塊1.dll和業務模塊2.dll的最新版本為3.1。
表2
業務模塊文件名存儲路徑版本業務模塊1.dlld:\download\33.2業務模塊1.dlld:\download\23.1業務模塊1.dlld:\download\12.1業務模塊n.dlle:\download\33.1業務模塊n.dlle:\download\22.1業務模塊n.dllc:\program files\Y1.0
表2中給出了每個業務模塊的所有版本的存儲路徑信息。由于軟件升級到最新版本時,有的業務模塊文件可延用前一版本,因此,業務模塊1.dll的最新版本為3.2,業務模塊n.dll的最新版本為3.1。
表3
存儲路徑版本d:\download\S3.23.2
表3中文件夾S3.2中存儲了版本3.2的業務包文件。
表4
存儲路徑版本d:\download\S3.23.2d:\download\S3.13.1d:\download\S2.12.1c:\program files\X1.0
表4中,文件夾S3.2中存儲了版本3.2的業務包文件,文件夾S3.1中存儲了版本3.1的業務包文件,文件夾S2.1中存儲了版本2.1的業務包文件。
上述配置文件的作用在于,當運行生成該配置文件的軟件時,系統首先會讀取配置文件,并根據配置文件中的存儲路徑信息找到升級文件并運行。也就是說,修改完配置文件后,運行的軟件即最新版本的軟件。因此,當配置文件中包含了升級文件的存儲路徑信息和版本信息時,實際上已經完成的軟件的升級。并且由于配置文件存儲在上述第二區域中,使得軟件的升級完全不需要用戶的參與,實現了用戶無感知的軟件升級,降低了軟件升級的復雜度,使得軟件升級更加快捷。
示例性的,上述將獲取的所述升級文件存儲到所述終端系統的第二區域,可包括:
識別所述升級文件是否為業務模塊文件或業務包文件,所述業務包文件包括業務模塊入口文件及運行所述軟件所需的所有業務模塊文件;
當所述升級文件為業務模塊文件時,將所述業務模塊文件存儲到所述第二區域;當所述升級文件為業務包文件時,將所述業務包文件存儲到所述第二區域的升級版本文件夾中,所述升級版本文件夾的版本與所述業務包文件的版本相對應。
例如,升級文件為業務模塊a.dll,則識別升級文件為業務模塊文件;升級文件包含多個文件或升級文件為一個壓縮文件包文件,則識別升級文件為業務包文件。
當升級文件為業務模塊文件時,直接將該業務模塊文件存儲到上述第二區域,如將業務模塊a.dll存儲到d:\download。當升級文件為業務包文件時,在上述第二區域中為業務包文件建立文件夾,將業務包文件存儲到建立的文件夾中,如將業務包文件存儲到d:\download\S3.1中。文件夾S3.1的版本可與業務包文件的版本相同,也可以不相同,只要二者對應即可。如業務包文件的版本為3.2,存儲該業務包文件的文件夾可用a2與業務包文件的版本相對應,將文件夾命名為Sa2。
示例性的,上述將獲取的所述升級文件存儲到所述終端系統的第二區域,可包括:
將所述升級文件,存儲到所述終端系統的系統目錄中的應用程序數據(appdata)目錄中。
示例性的,上述修改所述軟件的配置文件,可包括:
當所述升級文件為業務模塊文件時,在所述配置文件中,將所述業務模塊文件升級前的存儲路徑信息及版本信息,替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
當所述升級文件為業務包文件時,在所述配置文件中,將所述業務包文件升級前的存儲路徑信息及版本信息替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息及二者之間的對應關系。
例如,當配置文件如表1和表3所示給出存儲路徑信息和版本信息等時,則升級軟件時,用升級文件的存儲路徑信息和版本信息替換表1和表3中的存儲路徑信息和版本信息。如,假設某一軟件的升級文件為業務模塊1.dll的版本3.2,且業務模塊1.dll的版本3.2的存儲路徑為d:\download\Soft,則將表1中的業務模塊1.dll的存儲路徑和版本進行替換,其余內容不變,得到表5:
業務模塊文件名存儲路徑版本業務模塊1.dlld:\download\Soft3.2業務模塊2.dlld:\download2.1業務模塊n.dlle:\download3.1
假設該軟件的升級文件為業務包文件的4.1版本,且存儲在文件夾d:\download\S4.1中,則將表3中的存儲路徑和版本進行替換,得到表6:
存儲路徑版本d:\download\S4.14.1
當配置文件如表2和表4所示給出存儲路徑信息和版本信息等時,則升級軟件時,將升級文件的存儲路徑信息和版本信息添加到表2和表4中。如,某一軟件的升級文件為業務模塊1.dll的版本4.1,且業務模塊1.dll的版本4.1的存儲路徑為d:\download\Soft,則將業務模塊1.dll的存儲路徑和版本4.1 添加到表2中,得到表7:
業務模塊文件名存儲路徑版本業務模塊1.dlld:\download\Soft4.1業務模塊1.dlld:\download3.2業務模塊1.dlld:\download3.1業務模塊1.dlld:\download2.1業務模塊n.dlle:\download3.1業務模塊n.dlle:\download2.1
假設該軟件的升級文件為業務包文件的4.1版本,且存儲在文件夾d:\download\S4.1中,則將業務包文件的4.1版本和存儲路徑添加到表3中,得到表8:
存儲路徑版本d:\download\S4.14.1d:\download\S3.23.2d:\download\S3.13.1d:\download\S2.12.1
上述實施例提供的升級軟件的方法,通過將升級文件存儲到終端系統中除敏感區域以外的區域中,并修改運行軟件所需的配置文件,使得升級軟件過程完全無需用戶參與,降低了升級軟件的復雜度,達到了快速發布軟件版本的目的。
圖2為本發明實施例提供的一種運行軟件的方法的流程圖,包括:
步驟21、接收用于啟動軟件的啟動指令;其中,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域。
例如,用戶點擊某一終端的桌面上某一軟件的快捷圖標,即發起啟動該軟件的操作,該終端系統根據該操作接收到啟動該軟件的啟動指令。
該終端如上述升級軟件的方法實施例中給出的終端,操作系統采用了UAC技術,因此安全性較高。
其中,第一區域詳見圖1所示實施例中的說明。
步驟22、在所述啟動指令的觸發下,讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用并執行所述軟件的業務文件的最新版本;所述配置文件由所述軟件安裝時生成于第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。
其中,配置文件及第二區域詳見圖1所示實施例中的說明。所述軟件的業務文件至少包括所述軟件的業務模塊文件。例如可以是單獨的業務模塊文件,也可以是包括業務模塊入口文件和業務模塊文件的業務包文件等。業務包文件詳見圖1所示實施例中的說明。
所述軟件安裝時生成的配置文件僅包括業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,或者可僅包括業務包文件的安裝版本的存儲路徑信息、版本信息及二者之間的對應關系。
當所述軟件通過上述升級軟件的方法升級后,配置文件可至少包含業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,或者可至少包括業務包文件的升級版本的存儲路徑信息、版本信息及二者之間的對應關系。
當所述軟件通過上述升級軟件的方法經過多次升級后,配置文件可至少包含業務模塊文件的最新版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,或者可至少包括業務包文件的最新版本的存儲路徑信息、版本信息及二者之間的對應關系。例如,當所述軟件未被升級時,所述軟件的業務文件可為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的安裝版本,所述業務包文件的安裝版本存儲于所述第一區域中的安裝版本文件夾中;
所述配置文件中的存儲路徑信息為所述業務包文件的安裝版本的存儲路徑信息;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,包括:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述安裝版本文件夾中的業務模塊入口文件;其中,所述軟件的版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件;
通過運行啟動的所述安裝版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊文件,加載所述安裝版本文件夾中的業務模塊文件。
如,某一軟件X安裝時生成配置文件和版本選擇器。該軟件安裝時生成的配置文件如表3所示,不同的是,表3中的版本在這里應該為版本1.0即該軟件的安裝版本或安裝版本。
該軟件安裝時生成的目錄結構如圖3所示,安裝版本文件夾、版本選擇器 和所有公共模塊文件都直接保存在該軟件的安裝目錄下。其中,安裝版本文件夾中保存了業務包文件的安裝版本即安裝版本,其中,業務包文件詳見上述圖1所示實施例中的說明,包括業務模塊入口文件X.exe和所有的業務模塊文件業務模塊1.dll、…、業務模塊n.dll。
公共模塊文件包括:公共模塊1.dll、…、公共模塊n.dll。
版本選擇器的作用是讀取配置文件中的存儲路徑信息,找到并啟動最所述軟件的業務文件的最新版本。這里,業務文件為業務包文件。
當所述軟件未升級時,其業務包文件的最新版本即安裝版本。終端系統在接收到該軟件的啟動指令后,從配置文件中找到并調用業務包文件的安裝版本的存儲路徑信息指向的安裝版本文件夾中的業務模塊入口文件。
或者,當所述軟件未被升級時,所述軟件的業務文件可為業務模塊文件,所述業務模塊文件的最新版本為所述業務模塊文件的安裝版本,所述業務模塊文件的安裝版本存儲于所述第一區域;
所述配置文件中包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件,包括:
通過調用所述軟件的業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,加載所述業務模塊文件的安裝版本。
假設一軟件Y,安裝時生成的配置文件如表1所示,不同的是,這里表1中所有業務模塊文件的版本都應替換為版本1.0即安裝版本。該軟件Y安裝時生成的目錄結構如圖4所示,業務模塊入口文件Y.exe、所有的業務模塊文件和公 共模塊文件都直接保存在軟件Y的安裝目錄下。
軟件Y未升級時,所有業務模塊文件的最新版本均為安裝版本,終端系統接收到啟動指令后,調用業務模塊入口文件Y.exe,讀取配置文件的各業務模塊文件的存儲路徑信息,并加載存儲路徑信息指向的業務模塊文件的安裝版本。
當所述軟件在利用上述升級軟件的方法升級的過程中,通過替換的方式修改配置文件,即只在配置文件中給出業務文件的最新版本的存儲路徑信息時,所述軟件的業務文件可為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的升級版本,所述業務包文件的升級版本存儲于所述第二區域中的升級版本文件夾中;
所述配置文件中的存儲路徑信息為所述業務包文件的升級版本的存儲路徑信息;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,包括:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述升級版本文件夾中的業務模塊入口文件;其中,所述版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件和安裝版本文件夾,所述安裝版本文件夾中包括所述業務包文件的安裝版本;
通過運行啟動的所述升級版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊文件,加載所述升級版本文件夾中的業務模塊文件。
例如,當上述軟件X的升級程序已經下載了業務包文件的升級版本,且配 置文件如表3所示時,表3中的版本即業務包文件升級后的最新版本。
終端系統通過調用版本選擇器,讀取表3,獲得業務包文件的最新版本3.2的存儲路徑d:\download\S3.2,進而調用文件夾S3.2中的業務模塊入口文件X.exe,運行并加載文件夾S3.2中的所有業務模塊文件。當需要通過公共模塊文件加載業務模塊文件時,則終端系統調用業務模塊入口文件讀取注冊表,根據注冊表中的信息從軟件X的安裝目錄下找到對應的公共模塊文件進行加載。
其中,文件夾S3.2屬于升級版本文件夾。
或者,當所述軟件利用上述升級軟件的方法升級過程中,通過添加的方式修改配置文件時,所述配置文件中還包含所述業務包文件的升級版本的版本信息、所述業務包文件的升級版本的版本信息與所述業務包文件的升級版本的存儲路徑信息之間的對應關系、以及所述業務包文件的安裝版本的存儲路徑信息、版本信息及二者之間的對應關系;
根據所述配置文件中的存儲路徑信息啟動所述升級版本文件夾中的業務模塊入口文件,包括:
通過調用所述版本選擇器,按照最新版本優先的原則,選擇調用所述業務包文件的升級版本的版本信息對應的存儲路徑信息指向的所述升級版本文件夾中的業務模塊入口文件。其中,最新版本優先的原則,即當業務文件有多個版本供調用時,選擇調用其中的最新版本。如當業務模塊a.dll在配置文件中有多個版本的存儲路徑信息時,則選擇調用業務模塊a.dll的最新版本;或者如業務包文件在配置文件中有多個版本的存儲路徑信息時,則選擇調用業務包文件的最新版本。下同。
例如,軟件X通過上述升級軟件的方法升級后,配置文件如表4所示,給出了業務包文件的所有版本的存儲路徑信息和版本信息時,軟件X安裝時生成 的版本選擇器需要從配置文件中找到業務包文件的最新版本的存儲路徑信息。
具體地,終端系統可通過調用版本選擇器,首先從表4的“版本”一列中選擇最高的版本3.2,然后根據版本信息與存儲路徑信息之間的對應關系,找到業務包文件的最新版本的存儲路徑,找到并調用文件夾S3.2下的業務模塊入口文件。
或者,當所述軟件在利用上述升級軟件的方法升級的過程中,通過替換的方式修改配置文件,即只在配置文件中給出業務文件的最新版本的存儲路徑信息時,所述軟件的業務文件還可為業務模塊文件,所述業務模塊文件的最新版本為所述業務模塊文件的升級版本,存儲于所述第二區域;
所述配置文件中包含所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,包括:
通過調用所述業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。
例如,軟件Y通過上述升級軟件的方法升級后,配置文件如表1所示,用各業務模塊的升級版本替換了安裝版本,配置文件只包含所有業務模塊文件的最新版本的存儲路徑信息和版本信息。
運行軟件Y時,由終端系統調用業務模塊入口文件來讀取配置文件,根據配置文件給出的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,來加載各個業務模塊文件的最新版本。
或者,當所述軟件利用上述升級軟件的方法升級過程中,通過添加的方式修改配置文件時,所述配置文件還包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
根據所述業務模塊入口文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本,包括:
通過調用所述業務模塊入口文件,按照最新版本優先的原則,并根據存儲路徑信息、版本信息、文件信息及三者之間的對應關系,選擇調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。
例如,軟件Y通過上述升級軟件的方法升級后,配置文件如表2所示,給出了所有業務模塊文件的所有版本的存儲路徑信息和版本信息,業務模塊入口文件加載業務模塊文件時,需要從配置文件中找到各個業務模塊文件的最新版本,然后根據版本信息與存儲路徑信息的對應關系,找到并加載對應的業務模塊文件。
以表4為例,業務模塊入口文件首先在“版本”一列中找到業務模塊1.dll的最新版本3.2,然后根據與存儲路徑信息的對應關系找到存儲路徑d:\download\3,加載該路徑下的業務模塊1.dll。之后依次加載到最后一個業務模塊n.dll,找到業務模塊n.dll的最新版本3.1,然后根據與存儲路徑信息的對應關系找到存儲路徑e:\download\3,加載該路徑下的業務模塊n.dll。
需要說明的是,當所述軟件利用上述升級軟件的方法進行多次升級時,所述軟件的業務文件的升級版本可能有多個,如同一個業務模塊文件可能有多個升級版本保存在第二區域中,或者如業務包文件有多個升級版本,對應保存于第二區域中不同的升級版本文件夾中。這種情況下,當配置文件在升級的過程 中通過替換的方式被修改時,則版本選擇器或業務模塊入口文件不需要進行選擇,直接調用配置文件中存儲路徑信息指向的業務文件即可;當配置文件在升級的過程中通過添加的方式被修改時,則版本選擇器或業務模塊入口文件可按照上述最新版本優先的原則,選擇調用配置文件中存儲路徑信息指向的業務文件的最新版本,具體運行方法同上述例子,這里不再贅述。
示例性的,上述業務模塊文件、業務包文件的升級版本可位于所述終端系統的系統目錄下的應用程序數據appdata目錄中。
上述運行軟件的方法的實施例中,業務模塊文件、業務包文件的升級版本即上述升級軟件的方法中的升級文件。
上述運行軟件的方法的實施例通過在啟動時讀取配置文件,利用配置文件中提供的存儲路徑信息加載軟件的業務文件的最新版本,使得當軟件通過上述升級軟件的方法升級后,軟件啟動時調用業務文件的最新版本,直接運行升級版本,提高了軟件運行的靈活性和多樣性。
下面以QTalk軟件為例,對升級軟件和運行軟件的方法作進一步詳細說明。
QTalk軟件安裝在Win7系統時,可生成結構如圖5或圖6所示的安裝目錄,還可生成配置文件。
當QTalk軟件生成如圖5所示的安裝目錄時,該軟件的升級文件可為單獨的業務模塊文件的升級版本。運行QTalk軟件時由業務模塊入口文件QTalk.exe讀取配置文件來加載各個業務模塊文件的最新版本。
當QTalk軟件生成如圖6所示的安裝目錄時,該軟件的升級文件為業務包文件的升級版本,運行QTalk軟件時,由版本選擇器QT.exe讀取配置文件來加載業務包文件的最新版本。具體地,QTalk軟件安裝時,產生需要注冊表注冊的公共模塊文件、版本目錄生成與版本選擇器如QT.exe(命名不限),且三者平行 保存在QTalk軟件的安裝目錄下。其中,公共模塊文件為公共模塊1.dll、…、公共模塊n.dll等,需由QTalk安裝包向終端系統的注冊表注冊。版本目錄即版本文件夾,以版本號命名。業務模塊1.dll、…、業務模塊n.dll等業務模塊文件與業務模塊入口文件即業務入口QTalk.exe程序生成在版本目錄下。QTalk軟件安裝后用戶的軟件快捷方式指向版本選擇器QT.exe。當配置文件中包含多個版本目錄的路徑信息時,由版本選擇器通過讀取配置文件來確定拉起哪個版本。
QTalk軟件可升級時,升級程序將新版本文件通過靜默方式下載(即下載過程不需要通知用戶),將下載的文件放置在系統目錄下的應用程序數據(appdata)文件夾中,具體詳見上述升級軟件的方法實施例中的說明。
這樣,雖然Win7系統對用戶操作權限有嚴格控制,但appdata目錄中的讀寫操作不需要權限確認。下載完文件后,升級程序修改版本配置文件(也可放置在appdata下),實現QTalk軟件的升級。可以看出,整個升級過程中用戶無感知,實現了QTalk軟件的快節奏的發布新版本,且每次升級都無需用戶參與,解決了目前軟件升級,需要不斷用戶確認,打斷用戶使用的問題。
QTalk軟件升級后運行流程如圖7所示,包括:
步驟71、接收用戶點擊桌面快捷方式產生的啟動指令。
如,QTalk軟件安裝在Win7系統中后,終端系統的桌面上生成QTalk軟件的快捷圖標,用戶用鼠標點擊該快捷圖標后,終端系統根據該操作得到啟動QTalk軟件的指令。
步驟72、終端系統在啟動指令的觸發下啟動版本選擇器QT.exe。
步驟73、終端系統通過運行版本選擇器QT.exe讀取appdata目錄下的配置文件,該配置文件可如表4所示。
步驟74、終端系統通過運行版本選擇器QT.exe從配置文件中獲取業務包文件的最新版本的運行路徑。這里業務包文件詳見上述實施例中的說明,包含了業務模塊入口文件和業務模塊文件。業務包文件的最新版本保存在以最新版本的版本號命名的版本文件夾中。
步驟75、終端系統通過運行版本選擇器QT.exe,根據獲取的最新版本的運行路徑啟動最新版本的版本文件夾中的業務模塊入口文件QTalk.exe。
步驟76、終端系統通過運行業務模塊入口文件QTalk.exe加載業務模塊1.dll、…、業務模塊n.dll等業務模塊文件。
當加載的業務模塊文件需要通過公共模塊文件加載時,終端系統通過運行業務模塊入口文件QTalk.exe查找注冊表找到相應的公共模塊文件,進行加載。
可以看出,QTalk軟件的升級完全無需用戶參與,且QTalk軟件的運行始終以最新版本運行,實現了QTalk軟件的升級版本的快速發布和使用。
圖8為本發明實施例提供的一種升級軟件的裝置的結構示意圖。本實施例提供的裝置用于實現圖1所示的方法,包括:
文件獲取單元81,用于獲取軟件的升級文件,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
存儲執行單元82,用于將所述文件獲取單元81獲取的所述升級文件存儲到所述終端系統的第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域;
修改單元83,用于修改所述軟件的配置文件,所述配置文件由所述軟件安裝時生成于所述第二區域,修改后的配置文件包括所述升級文件的存儲路徑信息及所述升級文件的版本信息,用于使所述軟件啟動時運行所述升級文件。
示例性的,所述存儲執行單元82可包括:
文件識別子單元,用于識別所述升級文件是否為業務模塊文件或業務包文件,所述業務包文件包括業務模塊入口文件及運行所述軟件所需的所有業務模塊文件;
存儲執行子單元,用于當所述升級文件為業務模塊文件時,將所述業務模塊文件存儲到所述第二區域;當所述升級文件為業務包文件時,將所述業務包文件存儲到所述第二區域的升級版本文件夾中,所述升級版本文件夾的版本與所述業務包文件的版本相對應。
示例性的,將所述存儲執行單元82具體用于:
將所述升級文件,存儲到所述終端系統的系統目錄中的應用程序數據appdata目錄中。
示例性的,所述修改單元83可具體用于:
當所述升級文件為業務模塊文件時,在所述配置文件中,將所述業務模塊文件升級前的存儲路徑信息及版本信息,替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
當所述升級文件為業務包文件時,在所述配置文件中,將所述業務包文件升級前的存儲路徑信息及版本信息替換為所述升級文件的存儲路徑信息及版本信息,或者,在所述配置文件中添加所述升級文件的存儲路徑信息、版本信息及二者之間的對應關系。
上述升級軟件的裝置實施例,通過存儲執行單元將升級文件存儲到終端系統中除敏感區域以外的區域中,并通過修改單元修改運行軟件所需的配置文件,使得升級軟件過程完全無需用戶參與,降低了升級軟件的復雜度,達到了快速 發布軟件版本的目的。
圖9為本發明實施了提供的一種運行軟件的裝置的結構示意圖。本實施例提供的裝置用于實現圖2所示的方法,包括:
指令接收單元91,用于接收用于啟動軟件的啟動指令;其中,所述軟件安裝于終端系統的第一區域,所述第一區域為所述終端系統中需要用戶賬戶控制UAC認證的敏感區域;
軟件運行單元92,用于在所述啟動指令的觸發下,讀取所述軟件的配置文件,并根據所述配置文件中的存儲路徑信息調用所述軟件的業務文件的最新版本,所述配置文件由所述軟件安裝時生成于第二區域,所述第二區域為所述終端系統中除所述敏感區域以外的區域。
示例性的,所述軟件的業務文件可為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的安裝版本,所述業務包文件的安裝版本存儲于所述第一區域中的安裝版本文件夾中;
所述配置文件中的存儲路徑信息可為所述業務包文件的安裝版本的存儲路徑信息;
所述軟件運行單元92可具體用于:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述安裝版本文件夾中的業務模塊入口文件;其中,所述軟件的版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件;
通過運行啟動的所述安裝版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊 文件,加載所述安裝版本文件夾中的業務模塊文件。
示例性的,所述軟件的業務文件可為業務包文件,所述業務包文件包括所述軟件的業務模塊入口文件及運行所述軟件所需的所有業務模塊文件,所述業務包文件的最新版本為所述業務包文件的升級版本,所述業務包文件的升級版本存儲于所述第二區域中的升級版本文件夾中;
所述配置文件中的存儲路徑信息可為所述業務包文件的升級版本的存儲路徑信息;
所述軟件運行單元92可具體用于:
通過調用所述軟件的版本選擇器,讀取所述配置文件,并根據所述配置文件中的存儲路徑信息啟動所述升級版本文件夾中的業務模塊入口文件;其中,所述版本選擇器在所述軟件安裝時生成于所述第一區域,所述第一區域中還包含所述軟件的公共模塊文件和安裝版本文件夾,所述安裝版本文件夾中包括所述業務包文件的安裝版本;
通過運行啟動的所述升級版本文件夾中的業務模塊入口文件,讀取所述終端系統的注冊表,并根據讀取的注冊表從所述第一區域中找到對應的公共模塊文件,加載所述升級版本文件夾中的業務模塊文件。
示例性的,所述配置文件中還可包含所述業務包文件的升級版本的版本信息、所述業務包文件的升級版本的版本信息與所述業務包文件的升級版本的存儲路徑信息之間的對應關系、以及所述業務包文件的安裝版本的存儲路徑信息、版本信息及二者之間的對應關系;
所述軟件運行單元92可具體用于:
通過調用所述版本選擇器,按照最新版本優先的原則,選擇調用所述業務包文件的升級版本的版本信息對應的存儲路徑信息指向的所述升級版本文件夾 中的業務模塊入口文件。
示例性的,所述軟件的業務文件可為業務模塊文件的安裝版本,所述業務模塊文件的安裝版本存儲于所述第一區域;
所述配置文件中可包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
所述軟件運行單元92可具體用于:
通過調用所述軟件的業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,加載所述業務模塊文件的安裝版本。
示例性的,所述軟件的業務文件可為業務模塊文件的升級版本,存儲于所述第二區域;
所述配置文件中包含所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
所述軟件運行單元92可具體用于:
通過調用所述業務模塊入口文件,讀取所述配置文件,并根據所述業務模塊文件的升級版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系,調用所述業務模塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。
示例性的,所述配置文件還可包含所述業務模塊文件的安裝版本的存儲路徑信息、版本信息、文件信息及三者之間的對應關系;
所述軟件運行單元92可具體用于:
通過調用所述業務模塊入口文件,按照最新版本優先的原則,并根據存儲路徑信息、版本信息、文件信息及三者之間的對應關系,選擇調用所述業務模 塊文件的升級版本的存儲路徑信息指向的所述業務模塊文件的升級版本。
示例性的,上述業務模塊文件或業務包文件的升級版本可位于所述終端系統的系統目錄下的應用程序數據appdata目錄中。
上述運行軟件的裝置實施例通過軟件運行單元在啟動時讀取配置文件,利用配置文件中提供的存儲路徑信息加載軟件的業務文件的最新版本,使得當軟件通過上述升級軟件的方法升級后,軟件啟動時調用業務文件的最新版本,直接運行升級版本,提高了軟件運行的靈活性和多樣性。
以上實施例提供的技術方案中的全部或部分內容可以通過軟件編程實現,其軟件程序存儲在可讀取的存儲介質中,存儲介質例如:計算機中的硬盤、計算機只讀存儲器、光盤或軟盤等。
注意,上述僅為本發明的較佳實施例及所運用技術原理。本領域技術人員會理解,本發明不限于這里所述的特定實施例,對本領域技術人員來說能夠進行各種明顯的變化、重新調整和替代而不會脫離本發明的保護范圍。因此,雖然通過以上實施例對本發明進行了較為詳細的說明,但是本發明不僅僅限于以上實施例,在不脫離本發明構思的情況下,還可以包括更多其他等效實施例,而本發明的范圍由所附的權利要求范圍決定。

關于本文
本文標題:升級軟件和運行軟件的方法及裝置.pdf
鏈接地址:http://www.pqsozv.live/p-6180817.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
钻石光影