我制作了 msi 包以允許用戶選擇應用程式的安裝目錄。
我希望用戶只下載不需要用戶讀寫權限的應用程式,例如%APP_DATA%/Roaming/my_app_example_name.
原因是應用程式具有自我更新機制,當它在服務器上檢測到新版本時會自行更新。更新本身不使用 msi 啟動器,它只是使用 http 請求從服務器下載應用程式的新版本,并替換舊檔案。
.
.
例如,在流行的游戲
這里可以看到默認的安裝目錄是Appdata檔案夾

如果我將安裝目錄更改為 ProgramFiles,并嘗試安裝,我會收到此錯誤:

它有效地阻止安裝到目錄,因為它沒有權限從安裝程式本身創建檔案夾,那里。
我想實作相同的機制或類似的東西,因為我認為這是解決我的問題的一個非常優雅的解決方案。那么關于如何做到這一點的任何想法?
(順便說一下,我正在使用 jpackage 來創建 msi 啟動器)
uj5u.com熱心網友回復:
您可以將--win-per-user-install選項與 jpackage 一起使用。
在 Windows 上,默認值為 c:\Program Files\application-name;如果使用 --win-per-user-install 選項,則默認為 C:\Users\user-name\AppData\Local\application-name
jpackage 檔案中有關選項的更多詳細資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/518627.html
