vc6
15th March 2007 17:32 UTC
Silent Install of vcredist_x86.exe via NSIS
Non-silent install of vcredist_x86.exe (i.e. by simply ExecWait-ing it with no switches) works. :up:
However, I am now interested in silentely installing it.
I found an MSDN blog that describes how to do so:
vcredist_x86.exe /q:a /c:"VCREDI~1.EXE /q:a /c:""msiexec /i vcredist.msi /qb!"" "
(notice the quotation marks - they are critical!)
From the command line, the above works great.
However, from the NSIS script it simply doesn't work. :down:
I tried esacping those quotation marks once:
ExecWait '"$INSTDIR\${DLLMSVC8} /q:a /c:$\"VCREDI~1.EXE /q:a /c:$\"$\"msiexec /i vcredist.msi /qb!$\"$\" $\""'
and twice:
ExecWait '"$INSTDIR\${DLLMSVC8} /q:a /c:$\$\"VCREDI~1.EXE /q:a /c:$\$\"$\$\"msiexec /i vcredist.msi /qb!$\$\"$\$\" $\$\""'
But that did not solve the problem. :(
How do I deal with so many quotation marks in one string in an NSIS script?
Any idea or tip would be appreciated.
Thanks,
Victor
Anders
15th March 2007 17:47 UTC
$\"$\" and not $\$\"
as far as i can see
ExecWait
'"$INSTDIR\${DLLMSVC8}"/q:a/c:"VCREDI~1.EXE/q:a/c:""msiexec/ivcredist.msi/qb!"""'
should work
vc6
15th March 2007 17:57 UTC
Originally posted by Anders
$\"$\" and not $\$\"
as far as i can see
ExecWait
'"$INSTDIR\${DLLMSVC8}"/q:a/c:"VCREDI~1.EXE/q:a/c:""msiexec/ivcredist.msi/qb!"""'
should work
Bingo! This works like a charm :up:
For some reason it's not totally silent (yet) but at least I passed the quotation marks hurdle in NSIS (thanks to you).
Thank you!
Victor
onad
16th March 2007 12:43 UTC
/q [n|b|r|f] The /q option is used to set the user interface level in conjunction with the following flags:
q or qn creates no user interface
qb creates a basic user interface
The user interface settings below display a modal dialog box at the end of installation:
qr displays a reduced user interface
qf displays a full user interface
qn+ displays no user interface
qb+ displays a basic user interface