I have a merge module with some content common to several .MSI's and I'd like 
the .MSI that contains/includes the .MSM to specify where the .MSM should 
install its content - how can I do that?

I've tried the following - but it puts the 2 folders (PanoCntrl and MyAccount) 
directly in c:\program files rather than under, say, c:\program 
files\Development Kit May 2010

<?xml version='1.0' encoding='Windows-1252'?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
  <Module Id='MDSCLib' Language='1033' Version='1.0.0' >

    <!-- The package GUID should be changed every time you build MSI so * is 
used to tell tools to do that. -->
    <Package Id='8DD907C3-B5BF-4549-85BC-F34F1E1F4424' Comments='This MSM file 
installs the MDSC Library.' InstallerVersion='200' Manufacturer='Microsoft' />

    <Directory Id='TARGETDIR' Name='SourceDir'>
      <Directory Id='ProgramFilesFolder'>
        <Directory Id='INSTALLDIR' Name='.'>
            <Component Id='PanoCntrl' 
Guid='{E147715D-55EC-47d3-AD33-258E6EB6C507}'>
              <File Id='PanoramaVSIX' Name='Panorama.VSIX.4.0.vsix' 
Source='$(env._WINCEROOT)\xapps\MDSC\Controls\VsIntegration\Panorama.VSIX.4.0.vsix'
 Vital='yes' />
              <RemoveFolder Id="INSTALLDIR" On="uninstall" />
            </Component>
            <Component Id='MyAccount' 
Guid='{2288A34B-8161-4990-8A59-0ADF977754C2}'>
              <File Id='DataServiceFrameworkDLL' 
Name='DataServiceFramework.dll' 
Source='$(env._WINCEROOT)\xapps\MDSC\MyAccount\Shared\DataServiceFramework\Bin\$(var.Configuration)\DataServiceFramework.dll'
 Vital='yes' />
              <File Id='DataServiceFrameworkPDB' 
Name='DataServiceFramework.pdb' 
Source='$(env._WINCEROOT)\xapps\MDSC\MyAccount\Shared\DataServiceFramework\Bin\$(var.Configuration)\DataServiceFramework.pdb'
 Vital='yes' />
            </Component>
        </Directory>
      </Directory>
    </Directory>

  </Module>
</Wix>

Here's what the WXS for the .MSI looks like:

<?xml version='1.0' encoding='Windows-1252'?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
  <Product Name='Dev Kit' Id='{971CA8AB-D03E-4C71-BB89-F129B9B39A84}'
   UpgradeCode='{56B49009-B0DE-474c-AEB5-1D713EC21176}'
   Language='1033' Version='1.0.0' Manufacturer='Microsoft'>

    <!-- The package GUID should be changed every time you build MSI so * is 
used to tell tools to do that. -->
    <Package Id='*' Comments='This MSI file installs the Development Kit.' 
InstallerVersion='200' Compressed='yes' />

    <Media Id='1' Cabinet='DevKit.cab' EmbedCab='yes' />

    <Directory Id='TARGETDIR' Name='SourceDir'>
      <Directory Id='ProgramFilesFolder'>
        <Directory Id='INSTALLDIR' Name='Development Kit May 2010'>
          <Component Id='MyDevKit.xap' 
Guid='{C820BDDC-1BA4-47EC-A9E3-E4B64328D746}'>
            <File 
Source='$(env._WINCEROOT)\xapps\MDSC\MyAccount\MyDevKit\Bin\$(var.Configuration)\MyDevKit.xap'
 Vital='yes' />
            <File Source='$(env._WINCEROOT)\xapps\MDSC\MyAccount\MyDevKit\ 
Release Notes.docx' Vital='yes' />
            <RemoveFolder Id="INSTALLDIR" On="uninstall" />
          </Component>
          <Merge Id="MDSCLib" Language="1033" 
SourceFile="$(env._WINCEROOT)\xapps\MDSC\MDSCLibWix\Bin\$(var.Configuration)\MDSCLib.msm"
 DiskId="1" />
        </Directory>
      </Directory>
    </Directory>

    <Feature Id='Complete' Level="1">
      <ComponentRef Id='MyDevKit.xap' />
      <MergeRef Id="MDSCLib" />
    </Feature>

    <WixVariable Id="WixUILicenseRtf" Value="DevKit.rtf" />
    <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>
    <UIRef Id="WixUI_InstallDir" />
    <UIRef Id="WixUI_ErrorProgressText" />

  </Product>
</Wix>

So, the first question might be "what on Earth was I thinking specifying the 
INSTALLDIR as '.' ?!?"  Well, I pieced it together from some 
info<http://blogs.claritycon.com/blogs/sajo_jacob/archive/2007/12/18/3543.aspx> 
on the internet - it's likely that I misinterpreted the posting I got that from.

Thanks for the help!
Charlie

------------------------------------------------------------------------------

_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to