QT windows 桌面應用程式增量公升級一種方案

2021-09-10 13:01:47 字數 976 閱讀 8876

討論公升級方案之前,我們先聊一聊增量公升級怎麼實現,我暫時認為有兩種實現方式:

增量包的定義:每次公升級,將所有相對於前乙個版本更改的檔案壓縮成乙個zip包,即為公升級包。  比如當前版本:4.0.0.0。  我們更改了c++的一些功能,只改變了assist.exe.新版本為:4.0.0.1.  那麼v4.0.0.1 對比v4.0.0.0的增量就是 assist.exe 乙個檔案。我們就將assist.exe 壓縮到公升級包update_4.0.0.1.zip。依次類推每次的更新包。

乙個問題:跨了很多版本未公升級怎麼辦?

比如,當前有個客戶,在幾個月前安裝的1.0.0.0,好幾個月沒有再次登入軟體,這時候我們已經進行了幾十版的發版,現在版本已經達到了4.0.0.1。怎麼辦?

大小版本定義:將小幅度公升級的版本叫小版本。改變很多的公升級,可以叫為大版本(cef、qt版本公升級)。

大小版本幾個特點:

公升級邏輯:我們將本地版本傳localver給後台,後台在localver與remotever的中間的所有版本列表中進行搜尋,如果有大版本,則返回距離最新版本remotever最近的大版本到remotever之間的所有公升級包列表。

例1:

這種情況下,伺服器返回的公升級包列表是:1.0.0.5與1.0.0.6兩個公升級包的url.

例2:

這種情況下,伺服器返回的公升級包列表是:1.0.0.4、1.0.0.5與1.0.0.6三個公升級包的url.

客戶端的職責有兩個:

1. 拿著本地版本詢問後台,是否需要公升級。

現在,我們基於第一種的增量公升級方式,描述一下公升級流程。

桌面應用程式

桌面應用程式 在台式電腦上執行的應用程式稱為桌面應用程式。比如 記事本,word,excel。這種應用程式的特點是 1 缺少共享 2 直接雙擊就可以執行,不需要ie 3 一般以window的視窗形式存在 web應用程式 1 需要ie來執行 2 一般以網頁的形式的存在 3 可以有很多的客戶端來共享。比...

Web應用程式與桌面應用程式的區別

web delphi 伺服器網路 internet access 如果都是用.net做的話,桌面程式需要開發伺服器端和客戶端兩塊程式,電腦都要安裝.net framework,b s形式的話,只用做伺服器端。但兩者桌面應用可能軟體介面更好控制一些,web形式客戶端的螢幕就不太好空,一般滿足1024 ...

Web應用程式與桌面應用程式的區別

web delphi 伺服器網路 internet access 如果都是用.net做的話,桌面程式需要開發伺服器端和客戶端兩塊程式,電腦都要安裝.net framework,b s形式的話,只用做伺服器端。但兩者桌面應用可能軟體介面更好控制一些,web形式客戶端的螢幕就不太好空,一般滿足1024 ...