As has already been said, if you really want to do this you must use Windows 
Installer 4.5 and its multiple package installation chaining feature:
http://msdn.microsoft.com/en-us/library/bb736322(v=vs.85).aspx

InstallShield uses a bootstrapper. It can't magically extend the Windows 
Installer API (just like wix can't either).

But if I were you, rather than force an upgrade to Windows Installer 4.5, I'd 
just provide multiple .MSIs to the customers that require "multiple 
installations from a central location" and tell them in what order to install 
them... In fact, that is what I do :-)



-----Original Message-----
From: Kevin MacDonald [mailto:kevinmacdon...@gmail.com] 
Sent: 13 May 2011 17:32
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Chaining MSIs together

Using the latest version of Wix I could not see anything that supports the 
execution of other MSIs. I tried using a custom action to execute another MSI 
and, as expected, you will get an error telling you that another installation 
is currently in progress.

I know it's quite possible to produce a *.exe that runs several MSIs 
sequentially. I do this now with NSIS. The trick is, can one produce a *.msi 
that does the same thing? The folks at Installshield tell me that they CAN do 
it, although I'm starting to wonder if once one adds a prerequisite MSI to the 
main MSI that all it will produce is a *.exe.

Kevin


On Thu, May 12, 2011 at 8:16 PM, Christopher Painter < 
chr...@deploymentengineering.com> wrote:

> The MSI teams discourages "nested" aka "concurrent" installs. MSI 
> chaining is relatively new and requires MSI 4.5 which frequently 
> requires a bootstrapper to get you to that level ( i.e. MSI 2 / 3.1 not 
> enough ).
>
> There terms "bootstrapper" and "chainer" are used interchangeably but 
> there is a subtle distinction between the two. Strictly speaking a 
> "bootstrapper"
> runs before the MSI and installs MSI to be able to run the MSI. In my 
> world it installs .NET also because I use managed custom actions. The 
> chainer then comes into play and chains all of the remaining packages 
> together.
>
> At my day job I have about 50 packages ( about 26gb total ) that get 
> consumed by a couple dozen different product installers in various 
> combinations. We follow Product Line Development methodologies and 
> depending on which software assets are incorporated into a product and 
> what the ConOps for the product is, will drive what it needs. This is 
> a problem we licked a long time ago and extending the pattern is a piece of 
> cake.
>
>
>
> ---
> Christopher Painter, Author of Deployment Engineering Blog Have a hot 
> tip, know a secret or read a really good thread that deserves 
> attention? E-Mail Me
>
> --- On Thu, 5/12/11, Castro, Edwin G. (Hillsboro) 
> <edwin.cas...@fiserv.com>
> wrote:
>
>
> From: Castro, Edwin G. (Hillsboro) <edwin.cas...@fiserv.com>
> Subject: Re: [WiX-users] Chaining MSIs together
> To: "General discussion for Windows Installer XML toolset." < 
> wix-users@lists.sourceforge.net>
> Date: Thursday, May 12, 2011, 7:40 PM
>
>
> A bootstrapper is an executable that is responsible for running other 
> setup programs (.exe) and MSI packages in the order required by the 
> product getting installed. An example would be the Visual Studio 
> installer. It provides a user interface that determines what MSI 
> products need to be installed and installs them in the correct order. MSI 
> chaining  is not used.
>
> I don't understand how MSI chaining works but I have heard on numerous 
> occasions on this list that the Windows Installer team tries to 
> discourage MSI chaining but I don't know the exact reasons nor how 
> true that statement is.
>
> I've often heard that WiX supports everything in Windows Installer so 
> if MSI chaining is supported by Windows Installer then it must be 
> exposed in WiX somewhere but I don't know where. I am fairly sure that 
> having a custom action execute another setup executable is *not* MSI chaining 
> though.
>
> I don't have too much help in terms of options but hopefully the 
> descriptions above will help you understand some of it and perhaps 
> spark ideas on where next to look. Sorry I couldn't be more helpful.
>
> Edwin G. Castro
> Software Developer - Staff
> Digital Channels
> Fiserv
> Office: 503-746-0643
> Fax: 503-617-0291
> www.fiserv.com
> P Please consider the environment before printing this e-mail
>
> > -----Original Message-----
> > From: Kevin MacDonald [mailto:kevinmacdon...@gmail.com]
> > Sent: Thursday, May 12, 2011 4:57 PM
> > To: General discussion for Windows Installer XML toolset.
> > Subject: Re: [WiX-users] Chaining MSIs together
> >
> > So, dotNetInstaller is a package of .NET classes that facilitate 
> > chaining together MSIs? But, if it requires .NET then wouldn't any 
> > bootstrapper
> one
> > builds with dotNetInstaller require that it be bootstrapped itself 
> > with
> .NET?
> > My target computers don't necessarily have the .NET runtime installed.
> >
> > Sorry, perhaps I'm mis-understanding. I'm just now reading up on 
> > bootstrappers and wrapping my head around what they are. I don't 
> > think I understand them well enough yet to know if the end product 
> > of using a bootstrapper will be a single MSI that includes 
> > everything necessary for
> my
> > installation. Or is it a .NET executable that internally calls one 
> > MSI
> after
> > another? If that's true I'm not sure that will work for me, because 
> > my customers require an MSI. I think they need it for their systems 
> > that
> allow
> > rapid deployment to multiple machine.
> >
> > Thanks for responding!
> >
> > Kevin
> >
> >
> > On Thu, May 12, 2011 at 2:40 PM, John Cooper 
> > <jocoo...@jackhenry.com>
> > wrote:
> >
> > > Burn is meant to provide this functionality, but it is under developed.
> > >  There are plenty of chaining/bootstrapping products out there in 
> > > the meantime.  One I like is DotNetInstaller:
> > > http://dotnetinstaller.codeplex.com/ .  You could use this to 
> > > install the prerequisite Adobe AIR, if necessary, and then your product.
> > > --
> > > John M. Cooper
> > >
> > > -----Original Message-----
> > > From: Kevin MacDonald [mailto:kevinmacdon...@gmail.com]
> > > Sent: Thursday, May 12, 2011 4:25 PM
> > > To: wix-users
> > > Subject: [WiX-users] Chaining MSIs together
> > >
> > > Hello,
> > >
> > > I have an existing installer that I wrote in NSIS that does 
> > > several
> things.
> > > It installs the Adobe AIR runtime by invoking an executable 
> > > provided by Adobe. It then installs our AIR application, again 
> > > using installation utilities provided by Adobe. And finally, it 
> > > installs media which our AIR application knows where to find. This 
> > > all works great. However, some of our clients require a single MSI 
> > > file so that they can do multiple installations from a central 
> > > location. I started
> playing
> > with Wix in order to do this.
> > > However, I have encountered the problem where it does not seem to 
> > > be possible to chain MSIs together. I was able to kinda get it 
> > > working by having a custom action invoke the AIR runtime installer 
> > > using the code
> > > below:
> > >
> > >    <CustomAction Id='InstallAIRRuntimeAction'
> FileKey='file_AIRInstaller_0'
> > > ExeCommand='-silent' Return='asyncNoWait' />
> > >
> > >    <InstallExecuteSequence>
> > >      <Custom Action='InstallAIRRuntimeAction'
> > > After='InstallFinalize'>NOT Installed</Custom>
> > >    </InstallExecuteSequence>
> > >
> > > This works because the enclosing MSI doesn't wait for a response, 
> > > and the other MSI takes a few seconds to launch. This is of course 
> > > very hacky. Is there no way to do this properly? I don't mind if 
> > > the two MSIs are not chained, i.e. it would be O.K. if the AIR 
> > > runtime remained on the machine during an uninstall.
> > >
> > > InstallShield advertises that they can chain MSIs. I would rather 
> > > go the extra mile and use Wix or something similar, rather than 
> > > fork out
> > > $2000 for InstallShield Professional. I'm suprised that Wix can't 
> > > do the basic task of calling another MSI given how low level it is 
> > > when InstallShield is able to do it. Am I missing something?
> > >
> > > Thanks
> > >
> > > Kevin
> > >
> > > ------------------------------------------------------------------
> > > ----
> > > -------- Achieve unprecedented app performance and reliability 
> > > What every C/C++ and Fortran developer should know.
> > > Learn how Intel has extended the reach of its next-generation 
> > > tools to help boost performance applications - inlcuding clusters.
> > > http://p.sf.net/sfu/intel-dev2devmay
> > > _______________________________________________
> > > WiX-users mailing list
> > > WiX-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wix-users
> > > NOTICE: This electronic mail message and any files transmitted 
> > > with it are intended exclusively for the individual or entity to 
> > > which it is addressed. The message, together with any attachment, 
> > > may contain confidential and/or privileged information.
> > > Any unauthorized review, use, printing, saving, copying, 
> > > disclosure or distribution is strictly prohibited. If you have 
> > > received this message in error, please immediately advise the 
> > > sender by reply email and delete all copies.
> > >
> > >
> > >
> > > ------------------------------------------------------------------
> > > ----
> > > -------- Achieve unprecedented app performance and reliability 
> > > What every C/C++ and Fortran developer should know.
> > > Learn how Intel has extended the reach of its next-generation 
> > > tools to help boost performance applications - inlcuding clusters.
> > > http://p.sf.net/sfu/intel-dev2devmay
> > > _______________________________________________
> > > WiX-users mailing list
> > > WiX-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/wix-users
> > >
> >
> ----------------------------------------------------------------------
> --------
> > Achieve unprecedented app performance and reliability What every 
> > C/C++ and Fortran developer should know.
> > Learn how Intel has extended the reach of its next-generation tools 
> > to
> help
> > boost performance applications - inlcuding clusters.
> > http://p.sf.net/sfu/intel-dev2devmay
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
>
> ----------------------------------------------------------------------
> -------- Achieve unprecedented app performance and reliability What 
> every C/C++ and Fortran developer should know.
> Learn how Intel has extended the reach of its next-generation tools to 
> help boost performance applications - inlcuding clusters.
> http://p.sf.net/sfu/intel-dev2devmay
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
> ----------------------------------------------------------------------
> -------- Achieve unprecedented app performance and reliability What 
> every C/C++ and Fortran developer should know.
> Learn how Intel has extended the reach of its next-generation tools to 
> help boost performance applications - inlcuding clusters.
> http://p.sf.net/sfu/intel-dev2devmay
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability What every C/C++ and 
Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools to help 
boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to