I wasn't asking about ProductCode.  I'm asking about the component GUID 
for the registry key you're referring to.  You need to assign different 
GUIDs for all components that could be installed in two locations by the 
two different instances.  If you want to install the same files in two 
places, you're going to have to modify all the component GUIDs for the 
files, if I understand the process correctly.  I'm not an expert on using 
instance transforms to install multiple instances, but it seems like no 
matter what you do, you can't break the component rules.  Otherwise, it 
won't install the files to the "new" locations, since it will think they 
are already installed (based on the component ID and its installed state).

Kelly




Uma Harano <uhar...@esri.com> 

12/07/2009 03:24 PM
Please respond to
"General discussion for Windows Installer XML toolset." 
<wix-users@lists.sourceforge.net>


To
"General discussion for Windows Installer XML toolset." 
<wix-users@lists.sourceforge.net>
cc

Subject
Re: [WiX-users] Instance transforms with the msi






Each instance has a unique Product Code. Also, I was following the 
guidelines from the Windows installer SDK (On how to author instance 
transforms).
How do I install the same set of files for multiple instances using 
transforms?

Please advise!
Uma-


Here is the windows installer sdk topic on this:


Authoring Multiple Instances with Instance Transforms
To install multiple instances of a product from one Windows(r) Installer 
package, you need to author a base installation package for the product 
and an instance transform for each instance to be installed in addition to 
the base instance. Use the following guidelines when authoring your base 
package and transforms:

*Your setup application can check for the presence of the installer 
running on a version of the Microsoft(r)Windows Server 2003 family, 
Windows XP SP1, Windows 2000 SP4 and the Windows Installer 3.0 
redistributable. Any of these installer versions (or later) are required 
to install multiple instances from a single package using a product 
code-changing transform. 
* Each instance must have a unique product code and instance identifier. 
You may define a property in the base package, the value of which can be 
set to the instance identifier. 
* To keep the files of each instance isolated, the base package should 
install files into a directory location that depends on the instance 
identifier. 
* To keep the nonfile data of each instance isolated, the base package 
should collect nonfile data into sets of components for each instance. The 
appropriate components should then be installed based on conditional 
statements that depend on the instance identifier. 
* Author an instance transform for each instance being installed in 
addition to the base instance. The base package may install its own 
instance. 
* The instance transform must change the product code and identifier for 
each instance. 
* It is recommended that the product transform also change the product 
name so that the instance is readily distinguished in Add/Remove Programs 
through Control Panel. 
* If the instance transform installs files, they should be installed in a 
directory that depends on the instance identifier. 
* All nonfile data, such as registry keys, should include the instance 
name in their path to prevent collisions. This can be accomplished by 
using the property whose value is the instance identifier in the path as 
shown by the following example of a Registry Table.


-----Original Message-----
From: kelly.le...@milliman.com [mailto:kelly.le...@milliman.com] 
Sent: Monday, December 07, 2009 2:52 PM
To: General discussion for Windows Installer XML toolset.
Cc: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Instance transforms with the msi

Are you using the same component GUID for each of these keys?  You can't 
do that...  It's breaking the component rules and all kinds of bad things 
happen when you break the component rules.

Each distinct component keypath (the 'main' entry in a component) MUST 
have a unique component GUID.  Each distinct component GUID can only be 
installed in one place on a given machine (you can't try to install the 
same GUID to two different keypaths).

Kelly




Uma Harano <uhar...@esri.com> 

12/07/2009 02:47 PM
Please respond to
"General discussion for Windows Installer XML toolset." 
<wix-users@lists.sourceforge.net>


To
"General discussion for Windows Installer XML toolset." 
<wix-users@lists.sourceforge.net>
cc

Subject
[WiX-users] Instance transforms with the msi






Hi,
I am using instance transforms (msts) to install multiple instances of my 
base product (msi) on the same machine.

Everything works except for one issue:
I use an instance identifier property [INSTANCEPROP] that gets set 
to"Instance1", "Instance 2",...etc for each instance. I use this property 
to write registry keys for each instance. For example - 
HKLM\Software\ESRI\[INSTANCEPROP] is written via the registry table (One 
record in the registry table to linked to one component). When multiple 
instances are installed, this key could be repeated multiple times, but 
they would all be in their own hive
HKLM\Software\ESRI\ Instance1
HKLM\Software\ESRI\ Instance2
HKLM\Software\ESRI\ Instance3
Etc

Scenario:
The base setup and an instance 1 is installed, I uninstall the instance 1. 

I find that HKLM\Software\ESRI\Instance1 is still left behind on the 
machine after instance 1 is uninstalled.  Is this because the component 
that includes this registry key is still in the installed state with the 
base setup?
What would be the best way to ensure that the HKLM\Software\ESRI\Instance1 

get removed when instance 1 is uninstalled? Should I make multiple 
components in the msi each with unique conditions for each transform? Or 
create a custom action that deletes the registry entry for each transform?

Thanks!
Uma Harano

------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users




**************************************************************************************
This communication is intended solely for the addressee and is
confidential. If you are not the intended recipient, any disclosure, 
copying, distribution or any action taken or omitted to be taken in
reliance on it, is prohibited and may be unlawful. Unless indicated
to the contrary: it does not constitute professional advice or opinions
upon which reliance may be made by the addressee or any other party,
and it should be considered to be a work in progress. Unless otherwise
noted in this email or its attachments, this communication does not form 
a Statement of Actuarial Opinion under American Academy of Actuaries 
guidelines.
**************************************************************************************
------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users




**************************************************************************************
This communication is intended solely for the addressee and is
confidential. If you are not the intended recipient, any disclosure, 
copying, distribution or any action taken or omitted to be taken in
reliance on it, is prohibited and may be unlawful. Unless indicated
to the contrary: it does not constitute professional advice or opinions
upon which reliance may be made by the addressee or any other party,
and it should be considered to be a work in progress. Unless otherwise
noted in this email or its attachments, this communication does not form 
a Statement of Actuarial Opinion under American Academy of Actuaries guidelines.
**************************************************************************************
------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to