我有這個nsis安裝程序腳本。它被設置爲安裝到
InstallDir $DOCUMENTS\OCTGN\OCTGN
的問題是,安裝程序安裝.NET 4.0和VC2010,所以它需要被提升工作。當它升高時,如果用戶的帳戶是「標準用戶」,它將最終安裝到管理員的「我的文檔」文件夾中。
有沒有人有任何想法如何我可以解決這個問題,所以它安裝到適當的位置?請注意: 我不想更改爲程序文件,應用程序數據或任何其他位置。
我有這個nsis安裝程序腳本。它被設置爲安裝到
InstallDir $DOCUMENTS\OCTGN\OCTGN
的問題是,安裝程序安裝.NET 4.0和VC2010,所以它需要被提升工作。當它升高時,如果用戶的帳戶是「標準用戶」,它將最終安裝到管理員的「我的文檔」文件夾中。
有沒有人有任何想法如何我可以解決這個問題,所以它安裝到適當的位置?請注意: 我不想更改爲程序文件,應用程序數據或任何其他位置。
您基本上正在與UAC設計的方式作鬥爭,最好的選擇是不要混合寫入HKLM vs HKCU和$ ProgramFiles vs $ Profile。
一個體面的解決方法是使用RequestExecutionLevel user
,如果您檢測到.net 4.0或vc2010未安裝,則提取一個請求高度的小型安裝程序並執行安裝的管理部分。
您的最終選擇是使用UAC plug-in ...
很酷,感謝您的信息。 – 2013-03-19 02:51:58
您真的*應該*更改爲應用程序數據。屬於用戶的「文檔」文件夾中的唯一東西是用戶放置的東西,以及用戶將操作的*實際文檔*。你的程序數據不屬於那裏。是的,微軟的程序有時會出錯。這不是你不遵守規則的藉口。這違反了Windows界面準則,安裝程序需要在Documents文件夾中轉儲廢話。 – 2013-03-19 03:13:52
這不是一個隨心所欲的決定,在我們決定位置之前有很多事情要考慮。儘管如此,感謝pep談話。 – 2013-03-19 03:15:45