The following is used to generate an msiexec command with nant:
> "<exec program="msiexec"
> timeout="1800000" verbose="true">
> <arg line="/i "${server.msi}"" />
> <arg line="TARGETDIR="${server.target.path}""
> />
> <arg line="INSTALLDIR="${server.target.path}""
> />
> <arg line="ALLUSERS=1" />
> <arg line="/quiet" />
> <arg line="/log "${path::combine(log.path,
> 'Installation.Server.log')}"" />"
</exec>
Th generated command is: msiexec ( /i "S:\Work\Sources\Installation\Setup\LastBuild\WiseSetup Server.msi" TARGETDIR="C:\Program Files\MyProgs\Server" INSTALLDIR="C:\Program Files\MyProgs\Server" ALLUSERS=1; /quiet /log "C:\Projects\P3450\Environment\Logs\Installation.Server.log")
this command fails to execute when the /quiet (or /qn) is removed it runs successful. Otherwise it gives the error: External Program Failed: msiexec (return code was 1619)
Note that of the "(" and ")" is removed and the /quiet is there it runs successful !