Use external msi?

Dec 31, 2013 at 2:24 PM
This may be a dumb question, but I've searched and I can't seem to find an answer to this. Is there any way to use external MSI files in the chain - I mean have the chainer run an external MSI file that is not included in the "master" bootstrapper msi, and, if possible, that doesn't have to exist at compile time?
Coordinator
Dec 31, 2013 at 2:33 PM
You can make the MSI external to the bootrapper exe by setting compress="no" but it does have to be present at compile time.

You could also try wix-users.
Jan 8, 2014 at 4:50 PM
OK, so I'm discovering something with this. For some reason, when I am using an external MSI that is in a subdirectory beneath where the main installer is, when I run the install, I get a file dialog like it can't find it. The MsiPackage definition of this MSI looks like this:
  <MsiPackage
    Id="MobileServices"
    Compressed="no"
    SourceFile=".\MobileServices\MobileServicesSetup.msi"
    Vital="yes"
    DisplayInternalUI="yes"
    Visible="yes"
    InstallCondition="MobileServicesCheckbox">
  </MsiPackage
Is this expected? It doesn't seem to have a problem at compile time, but at install time, this happens. I expected it to find the msi in the subdirectory I specified at install time?
Jan 8, 2014 at 5:08 PM
I figured it out. If I use the "Name" attribute, it finds the file in the subdirectory.
Marked as answer by RichStephens on 1/8/2014 at 10:09 AM
Jan 8, 2014 at 5:12 PM
OK, one last dumb question: Can I use the SourceFile attribute with one path to specify where to find the MSI at build time, and the Name attribute with a different path to specify where to find the MSI at install time?
Coordinator
Jan 8, 2014 at 7:30 PM
Yes, I often do something like this:
      Name="redist\myinstall.msi"
      SourceFile="..\Packages\myinstall.msi"
At runtime the file is in redist but the source is located in my common packages folder.