I use six wixlibs to install seven services with multiple copies of "common" 
assemblies in different directories and AppPools.  Works great.  We only build 
one platform now, x64, but we used to build both x86 and x64.  Separate 
wixlib's and conditionalized source for each platform.

--
John Merryweather Cooper
Build & Install Engineer - ESA
Jack Henry & Associates, Inc.®
Shawnee Mission, KS  66227
Office:  913-341-3434 x791011
jocoo...@jackhenry.com
www.jackhenry.com 




-----Original Message-----
From: StevenOgilvie [mailto:sogil...@msn.com] 
Sent: Monday, July 29, 2013 2:26 PM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Need help, how to put a condition on a merge module in 
Product.wxs

Hi folks,

I have a Services installer that uses 5 merge modules (no I can't go away from 
merge modules to wixlibs not the way our services install we have 5 different 
services that install a base of same files for each service in a different 
directory for each service)...

Currently I have to VS solutions 1 for x86 and 1 for x64.

I want to have only one VS solution for both x86/x64 I know howto do that, 
however I am stuck on how I can conditionally install the merge modules based 
on the platform of the OS...

i.e. on a component I can do:
 <Component Id="cmp_SomeDll" Guid="{A GUID}">
            <File Id="file_SomeDll" KeyPath="yes"
Source="$(var.tcpSourcePath)\lib\x86\SomeFile.dll" />
            <Condition>
              
            </Condition>
          </Component>
          <Component Id="cmp_SomeDll_x64" Guid="{A GUID}" Permanent="no"
Shared="no">
            <File Id="file_SomeDll_x64" KeyPath="yes"
Source="$(var.tcpSourcePath)\lib\x64\SomeFile.dll" />
            <Condition>
              
            </Condition>
          </Component>

that way I can compile the WIX project for either x86 or x64 and the proper 
file is installed...

How do I do that for a merge module?
i.e. here is the merge ref and the merge module elements:

      <MergeRef Id="Enterprise1ServicesMM"/>
      <MergeRef Id="Enterprise2ServicesMM"/>
      <MergeRef Id="Enterprise3ServicesMM"/>
      <MergeRef Id="Enterprise4yServicesMM"/>
    </Feature>

  </Product>
        
        <Fragment>

    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="DIRECTORY_PATH_SERVICES" DiskId="1">
        
        
<Merge Id="Enterprise1ServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlib\Enterprise1ServicesMergeModule.msm"
Language="1033"/>
        <Merge Id="Enterprise2ServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlib\Enterprise2ServicesMergeModule.msm"
Language="1033"/>
        <Merge Id="Enterprise3ServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlib\Enterprise3ServicesMergeModule.msm"
Language="1033"/>
        <Merge Id="Enterprise4yServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlib\Enterprise4ServicesMergeModule.msm"
Language="1033"/>
        

        <Merge Id="Enterprise1ServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlibx64\Enterprise1ServicesMergeModule.msm"
Language="1033"/>
        <Merge Id="Enterprise2ServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlibx64\Enterprise2ServicesMergeModule.msm"
Language="1033"/>
        <Merge Id="Enterprise3ServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlibx64\Enterprise3ServicesMergeModule.msm"
Language="1033"/>
        <Merge Id="Enterprise4yServicesMM" DiskId="1"
SourceFile="$(env.TLSharedServices)\Installers\wixlibx64\Enterprise4ServicesMergeModule.msm"
Language="1033"/>
        
I have two merge modules for the same Service 1 x86 and 1 x64 but how do I 
conditionally install the proper one for the OS??

Thanks,

Steve
ps I think I am screwed on this one...




--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Need-help-how-to-put-a-condition-on-a-merge-module-in-Product-wxs-tp7587670.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent caught 
up. So what steps can you take to put your SQL databases under version control? 
Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
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.


------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to