Archive: Wrap multiple MSI's(newbie)


Wrap multiple MSI's(newbie)
HI All,

I have a requirement for a client to wrap three MSI's into a single file install. NSIS was recommended to me as the solution! Is it possible to use NSIS to achieve this? I have had a look and dont see MSI's mentioned(possibly not looked efficiently!. When looking at some of the scripts it mentions the installdir however I am looking for something that you can run from the desktop which will just kick off the MSI's one after another, the InstallDir being taken care of in the MSI's themselves. Sorry if I have missed something simple!Could someone point me in the right direction either to a previous post or some sample script involving multiple MSI install? Thanks in advance!


Probably you did not perform a deep search into the forum.
These are regular expressions for nsis. You can extract msi's into $PLUGINSDIR and call msiexec for each one.
You're able to check if the required version of msiexec is installed on the target and download it if needed.


Thanks for the reply. Could you give me the URL for one such post please? I have been searching through since and have not found any! cheers


There's s huge "database" here. Just for reference...

http://forums.winamp.com/search.php?...by=&sortorder=

Also you may want to review the documentation,

http://nsis.sourceforge.net/Docs/Chapter4.html#4.9.1

http://nsis.sourceforge.net/Docs/Chapter4.html#4.1


Thanks mate. Will be more thorough when next searching ;)


Could anyone post a complete sample script which just installs 1 MSI and I will hopefully be able to work out how to do the rest please? I am not a developer/scripter by any stretch of the imagination! I am having trouble with the installdir concept as the MSI will take care of all that anyway. Do I need to set an installdir? Any help would be appreciated!


Use File and then ExecWait.

Stu


Could you expand a bit? Post a snippet perhaps?
Cheers,
Rob


You don't need to use InstallDir unless you installer has to extract a custom installation beyond msi's.
My suggestion is to use $PLUGINSDIR as I mentioned above.

Also, you may want to search wiki to grab useful info.

http://nsis.sourceforge.net/List_of_...SIS_repository


InitPluginsDir
SetOutPath $PLUGINSDIR
File setup.msi
ExecWait `msiexec.exe /qn /i "setup.msi"` $R0
${If} $R0 != 0
DetailPrint `Application installation failed: $R0`
Abort
${EndIf}

Pretty self explanatory. Look up the instructions if you need more information.

Stu

Self explanatory when you know how ;) Thanks for your help guys