Looking for some advice:
I need to support multiple instances of my product installation (for sake of
discussion, let's just say 50 of the suckers).
Regarding all non-file data, I've authored separate components and conditioned
their installation based upon an internal instance name property:
Example:
<Component Id='DEX_INI_DEFAULT'
Guid='8C401687-CD16-4D7C-95E8-8906EAE5CAD3'>
<CreateFolder />
<IniFile Id='DEX_INIDEFAULT_DATABASETYPE' Name='Dex.ini'
Directory='DATA' Section='General' Key='DatabaseType' Value='SQL'
Action='addLine'/>
<IniFile Id='DEX_INIDEFAULT_BTINTERFACE' Name='Dex.ini'
Directory='DATA' Section='General' Key='BTInterface' Value='NoLoad'
Action='addLine'/>
<Condition><![CDATA[INSTANCE_NAME_INTERNAL="DEFAULT"]]></Condition>
</Component>
<Component Id='DEX_INI_INST01'
Guid='5F663477-6306-42AC-AE4D-DA60A8AF4E45'>
<CreateFolder />
<IniFile Id='DEX_INIINST01_DATABASETYPE' Name='Dex.ini'
Directory='DATA' Section='General' Key='DatabaseType' Value='SQL'
Action='addLine'/>
<IniFile Id='DEX_INIINST01_BTINTERFACE' Name='Dex.ini'
Directory='DATA' Section='General' Key='BTInterface' Value='NoLoad'
Action='addLine'/>
<Condition><![CDATA[INSTANCE_NAME_INTERNAL="INST01"]]></Condition>
</Component>
<Component Id='DEX_INI_INST02'
Guid='8CB76616-D40A-439E-8A2C-175BCB700E69'>
<CreateFolder />
<IniFile Id='DEX_INIINST02_DATABASETYPE' Name='Dex.ini'
Directory='DATA' Section='General' Key='DatabaseType' Value='SQL'
Action='addLine'/>
<IniFile Id='DEX_INIINST02_BTINTERFACE' Name='Dex.ini'
Directory='DATA' Section='General' Key='BTInterface' Value='NoLoad'
Action='addLine'/>
<Condition><![CDATA[INSTANCE_NAME_INTERNAL="INST02"]]></Condition>
</Component>
... etc...
1st Question:
Using the sweet new tools / approaches available in WiX, is there a more
clever way of going about the above so I don't have to duplicate a bunch of
code?
Then, what I did in the past was (after my install built), copied the MSI. In
the copy I change the ProductCode and INSTANCE_NAME_INTERNAL properties, then
generate a transform. Change the values, then generate another transform
(rinse and repeat until I get 50 instance transforms). These transforms are
then embedded within the original built MSI. [This process was automated via a
custom, console based utility]
2nd Question:
Using the sweet new tools / approaches available in WiX, how might I go about
this so that the above process becomes part of my MSI WiX Project build within
Votive? Can I somehow leverage torch? Is there a WiX process / utility / MS
Build Script, etc... to assist in this process (modifying an MSI, generate
transform, stuff transform into an MSI)?
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users