客戶端軟件,一般需要是會升級迭代的,那麼就需要軟件更新,當部署以後升級大家一般怎麼辦呢?
今天順便總結下。
1.最多最簡單的辦法
軟件重裝,這種應該是軟件應用比較多的,用最新版本安裝,替換原來版本,比如大家熟知的360這些。新版本就是去重新安裝。
2.軟件自動更新
這個需要軟件自己設計安裝升級的組件。
(1)有專門的服務端支持,客戶端啓動後連接服務端,檢測服務端最新的版本,然後通過服務端升級,替換升級的DLL.這種對客戶端最簡單,甚至可以由服務端提供,需要更新哪些DLL
(2)沒有服務器,使用數據庫升級。版本放在數據庫中,有一個版本列表,客戶端啓動後去數據庫查詢是否有最新版本升級,有就下載本地替換。
(3)FTP服務器支持,直接在FTP上放置每個版本的更新,由客戶端下載。
基本就是這樣,這裏說說一些處理。總體上講,客戶端肯定有一個本地文件,記錄當前本地版本,用來比較最新的版本信息。
例如FTP這些,最好只是將需要更新的DLL放入,如果沒出全部放入,需要固定完整可用版本。建議用一個XML文件,按照軟件目錄,刪除一個文件MD5列表,而客戶端本地也有一個完整的XML,用來比較文件是否修改,修改的文件才下載本地。對於大客戶端或者有大文件的軟件適合。客戶端本地文件沒有XML列表也可以,檢測文件MD5並不耗時,可以直接及時檢測。
總之,內部比較文件MD5,更新的文件或者新增的文件才下載,可以節省客戶端升級。
最近因爲需要,做了一個依靠數據庫升級的demo.