2010-08-13 18 views
0

閱讀INSTALLDIR我有開始爲下一個NSI腳本:NSIS:問題由InstallDirRegKey

Name "myprog"
OutFile "myprog.exe"
InstallDir $PROGRAMFILES32\xx
InstallDirRegKey HKLM "Software\yy\xx" "InstallDir"
RequestExecutionLevel admin
AutoCloseWindow true
BrandingText /TRIMCENTER "me"
LoadLanguageFile "${NSISDIR}\Contrib\Language files\German.nlf"
Caption "Updateprogramm"

它工作正常,我的開發機器上,而不是在生產(如用戶對只有只讀權限註冊表路徑)。它是一個Win 2003服務器操作系統。即使存在註冊表項,程序也會嘗試安裝在$ PROGRAMFILES32 \ xx中。

回答

0

InstallDirRegKey只需要讀取權限。

對我來說,麻煩的事情是你在說只讀,但你的腳本中有「RequestExecutionLevel admin」。這告訴我你需要管理員權限,當你有「RequestExecutionLevel admin」時,你還需要使用UserInfo :: GetAccountType(當UAC關閉時處理< NT6系統和Vista +)