第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

軟件自動升級框架設(shè)計

軟件自動升級框架設(shè)計

開滿天機(jī) 2019-03-19 17:19:34
如何設(shè)計一個好的桌面軟件更新框架?現(xiàn)在軟件目錄是這樣。一堆DLL+一個EXE主程序我目前更新設(shè)計是這樣.啟動時候檢查更新,如果需要更新,則下載文件到臨時目錄。但是如何覆蓋? exe正在使用DLL。無法覆蓋的。最好能保持只運(yùn)行一次exe,要不然殺毒軟件會提示正在調(diào)用可疑的exe。
查看完整描述

3 回答

?
元芳怎么了

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個贊

建議程序本身和控制程序升級的程序分開,也就是2個exe。
同時服務(wù)端發(fā)布一個清單列表,里面包含構(gòu)成當(dāng)前運(yùn)行exe的各個組成部分的字節(jié)數(shù)及其MD5,以及版本,這樣控制升級的exe可以通過檢測清單列表里的內(nèi)容來判定哪些部分需要更新(單獨(dú)更新哪些dll還是程序整體)。程序啟動的時候保證更新的程序同時也是啟動的,其他的邏輯由控制程序來控制,當(dāng)程序退出后不再鎖定工作目錄,更新程序完成更新。

更新程序如果本身也是有可能升級的,這種情況如果也有很大可能會出現(xiàn),則可以在服務(wù)端也設(shè)置一個配置接口,在需要更新時,用瀏覽器跳轉(zhuǎn)進(jìn)行數(shù)據(jù)更新程序整體的安裝包。

這樣的話,假設(shè)程序本身為A, 負(fù)責(zé)更新的程序?yàn)閡pdate,角色關(guān)系如下
A的更新由update負(fù)責(zé),update的跟新由瀏覽器下載負(fù)責(zé)


查看完整回答
反對 回復(fù) 2019-04-19
?
森欄

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個贊

專門準(zhǔn)備一個簡單的updater的程序(可以用參數(shù)調(diào)整配置就好)
啟動的時候(或者不定期)把updater打開,如果沒有更新就自己退出
如果有更新就關(guān)掉主程序(當(dāng)然需要用戶確認(rèn)),開始升級,完成后重新打開主程序,然后自己悄悄退出

查看完整回答
反對 回復(fù) 2019-04-19
?
慕虎7371278

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個贊

在你的程序入口,先查看本地update目錄有沒有update的文件,如果有就先update那些dll,之后在load程序的dll,然后程序啟動。程序啟動后要有個update進(jìn)程負(fù)責(zé)檢查有么有update,如果有就負(fù)責(zé)下載update,下載完成后,提醒用戶有update,用戶選擇update就重新啟動程序。

這樣只需要一個exe就可以了,不過這個exe不能被update,所以這個exe里面只能包含最精簡的邏輯


查看完整回答
反對 回復(fù) 2019-04-19
  • 3 回答
  • 0 關(guān)注
  • 757 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號