在nsis中运行msiexec时指定目标目录

时间:2017-04-05 15:59:22

标签: windows-installer nsis msiexec

我正在尝试使用msiexec安装7-Zip.msi。虽然我可以使用以下nsis命令执行msi,但默认安装到C:\ Program Files

ExecWait '"msiexec" /passive /i "$OUTDIR\<msi filename>.msi"'

我找不到为安装指定自定义目标目录的方法。

msiexec文档建议我可以使用TARGETDIR。所以我尝试了下面的

SetOutPath "C:\Software\7-Zip"
DetailPrint "Installing 7-Zip to $OUTDIR" 
ExecWait '"msiexec" /passive /i "$OUTDIR\7-Zip.msi" TARGETDIR="$OUTDIR"'

但是当我运行nsis exe时,我没有收到任何错误,但是7-Zip还没有安装到C:\ Software \ 7-Zip目录。

有没有人知道在使用msiexec时如何指定目标安装目录?

1 个答案:

答案 0 :(得分:1)

ExecWait&#39;&#34; msiexec&#34; / passive / i&#34; C:\ Temp \ 7-Zip.msi&#34; INSTALLDIR =&#34; $ OUTDIR&#34;&#39;

使用INSTALLDIR解决了这个问题。好像INSTALLDIR是特定于7-Zip.msi的属性。一些msi文件使用TARGETDIR。