1
我正在运行使用NSIS完成的程序安装程序,但/ D选项似乎无法正常工作(或更好地在内部重写)。 通过命令行我触发:NSIS无声安装程序路径覆盖
installer.exe /S /D=C:\Users\Public\installDir
NSIS代码是:
InstallDir "C:\Users\Public\${VERSIONSTR}"
Function xxxx
${If} $MultiUser.InstallMode == "AllUsers"
StrCpy $INSTDIR "C:\Users\Public\Dir1"
${EndIf}
IfSilent 0 +20
StrCpy $INSTDIR "C:\Userdata\Dir2"
FunctionEnd
所使用的安装文件夹是 “C:\用户\公共\方向2”。即使我评论IfSilent块,installtion文件夹将是“C:\ Users \ Public \ Dir1”,但绝不会是通过命令行传递的。 我的脚本有什么问题?
当心你的'IfSilent 0 + 20'的:它应该是'+ 2',不'+ 20' – Seki
你确定你在你的函数XXXX和/或使用'$ INSTDIR'是通之后不会重写? – Seki
是的,我在这个函数里面传递,因为路径是根据它写在里面的。我也没有看到有可能重写它,但可能是我的失踪。我必须寻找什么? – user2435588