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
> 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

Reply via email to