2015-09-28 77 views

回答

1

根據我的經驗,大多數人都是在應用程序本身中執行此操作,以便在運行時檢查您的網站是否有更新。

基本上,您需要一個Web服務調用,您的應用程序將通過您的設置的ProductCode和版本,您的MSI文件構建。在您的虛擬主機上,您需要一個數據庫(或Xml文件),其中包含最新版本及其下載位置的信息,以便您可以將該信息返回給您的應用程序,假設最新版本高於正在運行的版本。

您在Visual Studio中,因此您可以構建RemovePreviousVersions更新的MSI,這就是您下載和安裝的內容。如果安裝需要管理員權限,並且您的應用程序未升級,則會啓動帶有提升清單的外部exe以安裝它。

+0

這就是我需要的。 – Mainak

0

我剛剛完成了一個類似於此的項目,但我沒有使用Visual Studio安裝程序庫,而是創建了一個運行時間爲10分鐘的循環的Windows服務,當服務檢測到新版本時,它會終止正在運行的應用程序並執行下載並將新文件複製到應用程序文件夾中。

有幾件事情需要考慮; 1)優雅地警告並關閉應用程序的方式,以便用戶不會因爲強制終止應用程序而生氣。 2)用於存儲升級後的應用程序文件的Web位置,以及用於公佈可用應用程序版本的Web服務。 3)排隊升級的方式,以便在發佈新版本時,不是每個客戶端都會一次升級(使用升級請求和下載將您的Web服務器淹沒)。

Adob​​e使用此技術來升級和安裝Acrobat Reader和Flash等應用程序。

相關問題