Doesn't anybody have a clue of whats wrong with this ?
Why is the wrong transform installed ?
And if I can create a single patch for multiple products (not installable at 
the same time) if I have in each of them a component with the same Id but 
different GUID ?


----- Original Message ----
From: Adrian Gantoi <[EMAIL PROTECTED]>
To: wix-users@lists.sourceforge.net
Sent: Tuesday, February 12, 2008 12:35:42 PM
Subject: [WiX-users] Single patch for multiple products


Hi all,
 
Sorry for being so "long" in describing my problem :), but...
I encountered a problem with applying a patch in the following scenario.
I have a setup project with 2 configurations which I build.
Configuration 1
- the product has the Product Id GUID1
- the product has a component with Id COMP and guid GUIDCOMP1
this component installs a txt file with Id FILE from source dir DIR1
Configuration 2
- the product has the Product Id GUID2
- the product has a component with Id COMP and guid GUIDCOMP2
this component installs a txt file with Id FILE from source dir DIR2
This means:
- I have two products (distinct product id)
- I install from each product a component with the same Id but different GUID
- each component installs a file called FILE.TXT in the same folder (the 
contents of the txt file is different between products)
- the two products cannot be installed at the same time
I tryied to create a patch for both products after changing the txt files 
(source dir changed from DIR1/DIR2 to DIRUPD1/DIRUPD2)
I used WiX tools only for the patch building process like below:
REM -----------------------------------------------------------------------
REM Patch Build - Differences
REM -----------------------------------------------------------------------
"%WixDir%\torch.exe" -p -xi Config1\Setup.wixpdb UPDConfig1\Setup.wixpdb -out 
diff1.wixmst
"%WixDir%\torch.exe" -p -xi Config2\Setup.wixpdb UPDConfig2\Setup.wixpdb -out 
diff2.wixmst
REM -----------------------------------------------------------------------
REM Patch build - Compile patch
REM -----------------------------------------------------------------------
"%WixDir%\candle.exe" Patch.wxs
REM -----------------------------------------------------------------------
REM Patch build - Link patch
REM -----------------------------------------------------------------------
"%WixDir%\light.exe" Patch.wixobj -out Patch.wixmsp
REM -----------------------------------------------------------------------
REM Patch build - Create patch
REM -----------------------------------------------------------------------
"%WixDir%\pyro.exe" Patch.wixmsp -out Patch.msp -t RTM diff1.wixmst -t RTM 
diff2.wixmst
The Patch.wxs file contains a ComponentRef to the Id of the tricky component(s) 
and the general contents is below:
<Patch AllowRemoval="yes"...
       Classification="Hotfix">
    <Media Id="10000" Cabinet="RTM.cab">
       <PatchBaseline Id="RTM"/>
    </Media>
    <PatchFamilyRef Id="PatchFamily"/>
</Patch>
<Fragment>
    <PatchFamily Id='PatchFamily' Version='1.0.0.0' Supersede='yes'>
       <ComponentRef Id="COMP"/>
     </PatchFamily>
</Fragment>
The result .msp file, when applied, will update my FILE.TXT installed from the
RTM Config1 product to the FILE.TXT included in my
updated Config2 product.
Installing the patch with logging options shows me something which I cannot 
understand:
...: Looking for patch transform: RTM.1
...: Validating transform 'RTM.1' with validation bits 0x922
...: Note: 1: 2746 2: RTM.1 3: C:\WINDOWS\Installer\49fc6a.msi 4: GUID2 5: 
GUID1 
...: 1: 2746 2: RTM.1 3: C:\WINDOWS\Installer\49fc6a.msi 4: GUID2 5: GUID1 
...: Note: 1: 2729 
DEBUG: Error 2746:  Transform RTM.1 invalid for package 
C:\WINDOWS\Installer\49fc6a.msi. Expected product GUID2, found product GUID1.
...: Skipping validation for patch transform #RTM.1.  Will not apply because 
previous transform was invalid
...: Looking for patch transform: RTM.2
...: Validating transform 'RTM.2' with validation bits 0x922
...: Transform 'RTM.2' is valid.
I installed the product with GUID1, yet somehow the patch is looking only for 
the product with GUID2 and applying the transform for GUID2 product.
Can somebody let me know where I made the mistake (the identical component id 
??)
and if I have any chance of patching FILE.TXT with the correct one from a 
single MSP and
without changing the identical component id ?
 
Thanks,
Adrian



Looking for last minute shopping deals? Find them fast with Yahoo! Search.


-----Inline Attachment Follows-----

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/


-----Inline Attachment Follows-----

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


      
____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ 
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to