我正在更新NSIS安裝腳本從XP到Win7的過程。由於未知的原因,即使以管理員身份運行,安裝程序也無法在Win7下運行時寫入註冊表。安裝程序中的嵌入式UAC清單設置爲需要管理員權限(通過在腳本中指定RequestExecutionLevel admin)。此外,我試圖右鍵單擊安裝程序並選擇以管理員身份運行。在操作系統中關閉UAC也不能解決問題。NSIS:無法寫入註冊表(HKLM Software ...)在Windows 7
當我在XP下運行相同的安裝程序時,註冊表項就像它應該寫的一樣。
我配對了我的安裝腳本來嘗試隔離問題:
!define APP_NAME "MyTestApp"
Name "${APP_NAME}"
OutFile "${APP_NAME} Setup.exe"
RequestExecutionLevel admin
Page instfiles
Section -Core
SetDetailsView show
WriteRegStr HKLM "Software\XyzCompany\${APP_NAME}\Installation" "VersionString" "V0.0.0"
SetAutoClose false
SectionEnd
在另一方面,我能寫受限文件夾(如C:\ ProgramData)(僅管理員有寫權限在這裏默認)。我在這裏錯過了非常明顯的東西嗎?運行NSIS 2.45。
你嘗試v2.46?這是Win7的x86或x64? – Anders