簡體   English   中英

如何在沒有管理權限的情況下為我的應用程序實現自動更新

[英]How to implement Auto-Updates for my Application without Administration Rights

我維護着一個大型Windows C ++應用程序,該應用程序與nullsoft nsis一起安裝。 安裝快速簡便(不到1分鍾)。

大型公司中的某些用戶沒有管理特權,因此必須訂購昂貴的第三方服務才能更新其安裝。 因此,其中一些僅每年更新一次,而我們每個月都會發貨,有時還會修復重要的錯誤等。

因此,我們正在考慮不需要提升管理權限的自動更新。 Mozilla和Adobe以及其他公司也可以做到這一點。 據我所看到的Mozilla XULRunner網站,他們安裝了一項服務,該服務隨后可以運行更新而不會強迫用戶輸入管理密碼。 我還找到了Google的Omaha,但尚不清楚管理員權限(“支持受限的用戶環境;例如,沒有管理員權限的用戶“ ...”,這要求該用戶具有管理員權限。”)。

到目前為止,我還沒有找到這些問題的確切答案:

  • 為了建立這樣的機制,我們必須采取什么步驟?
  • 我們可以繼續使用nsis嗎?
  • 請求什么服務器基礎架構?

您的應用程序應在服務器/網站上檢查更新,並獲得下載鏈接。 如果您維護帶有固定超鏈接的文本文件/頁面,這應該非常容易。 此超鏈接可以在您的應用程序中進行硬編碼。 如果它檢測到的版本比當前版本新,請下載文件。 除了這些文件之外,還應該指示替換哪些文件以及要在什么位置添加哪些文件等。

現在,是否需要管理員權限取決於您放置更新文件的位置。 如果目標文件夾有一些限制,那么將很難在同一會話中進行更新。 因此,您可能必須啟動虛擬exe,該虛擬exe在啟動過程中向用戶詢問管理員權限。 現在,您可以輕松地將更新的文件復制到所需的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM