- NSIS Discussion
- Wrap multiple MSI's(newbie)
Archive: Wrap multiple MSI's(newbie)
oreillyr
10th January 2008 12:18 UTC
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!
Red Wine
10th January 2008 12:36 UTC
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.
oreillyr
10th January 2008 14:03 UTC
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
oreillyr
10th January 2008 14:53 UTC
Thanks mate. Will be more thorough when next searching ;)
oreillyr
11th January 2008 14:01 UTC
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!
Afrow UK
11th January 2008 15:09 UTC
Use File and then ExecWait.
Stu
oreillyr
11th January 2008 15:53 UTC
Could you expand a bit? Post a snippet perhaps?
Cheers,
Rob
Red Wine
11th January 2008 17:12 UTC
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
Afrow UK
11th January 2008 17:18 UTC
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
oreillyr
14th January 2008 11:13 UTC
Self explanatory when you know how ;) Thanks for your help guys