我們目前正在研究修改我們的應用程序的更新過程,但有很多可能的方法可以做到這一點,但我會先介紹一些背景知識。我們目前正在運行一個MVVM WPF/Silverlight應用程序,它有一個本地和聯機運行的SQL Server 2008 R2數據庫。我們目前有一個更新過程,它可以在線檢查更新,然後啓動更新程序以在運行MSI或MSP修補程序文件以提供更新之前提升權限。自動更新建議
不幸的是,由於我們大多數客戶的設置,我們發現大多數用戶都會因訪問權限而苦惱,因爲他們的本地管理員並不總是可用。這導致我們尋找替代方法。
我們理想的情況是在系統用戶帳戶下以後臺運行一個進程,這會定期檢查服務器是否有更新。當更新被認爲可用時,應當通知當前用戶有更新可用並詢問他們是否希望下載它(還有關於用戶在準備就緒時單擊以運行更新的靜默下載的討論)。然後該進程可以運行UI以顯示正在進行的下載,如果這顯示在工具欄的通知區域中,它將再次是理想的。在這個過程結束時,它應該在提升的權限下運行MSI文件,以允許用戶在沒有管理員權限的情況下更新軟件。
該軟件的初始安裝將由管理員執行,該管理員將意識到此完全自動更新過程。
所以我的問題是:
什麼是最好的實踐方法進行這種類型的過程? 您對編碼有什麼建議,例如我們是否有應用程序或將任務或服務關閉? 是否有專門爲解決此問題而設計的軟件? 是否有一個特定的Windows帳戶是爲諸如目的而設計的? 任何示例和不同做法的優缺點。
我意識到這是一個非常模糊的問題,但我寧願遵循推薦的方法,而不是重新發明輪子。
謝謝。
+ 1/-1:我意識到這是一個非常模糊的問題,但我寧願跟隨推薦的方法,而不是重新發明輪子:)。 – Noctis 2014-10-06 13:39:27