Hello, 

I am trying to grasp the concept of minor and small upgrades, but I am having 
some trouble with getting it to work. 

First of all, it doesn't seem to work at all with 3.7. 
I have downgraded my WiX to 3.5, and there something happens at least, but my 
msp seems to be empty when I examine it with instead (http://www.instedit.com/).

A bit about what I do: 
I have a fairly complex installer with a couple of hundred files total, divided 
among 4 features. I build this with TeamCity, and I have two separate 
installers (no real changes, except for the version nummer - 1.2.0.22679 and 
1.2.5.22754). I imagine that this should be enough to generate something. 

I have a build script, a simple batch file, which executes the four steps 
described in both the WiX doc and Nick Ramirez' book. 

My patch.wxs then includes a couple of file components, as I want these 
replaces (mind you, I am still in the testing phase, trying to understand the 
concept). 

First my "build script": 
=======================================
"%wixdir%bin\torch.exe" -p -xi %oldmsi% %newmsi% -v -out diff.wixmst
"%wixdir%bin\candle.exe" -v Patch.wxs
"%wixdir%bin\Light.exe" -v Patch.wixobj -out patch.wixmsp
"%wixdir%bin\pyro.exe" -v "patch.wixmsp -out patch.msp -t Patch diff.wixmst

%oldmsi% and %newmsi" are complete paths to the wixpdb files for respectively 
old and new installer. 
Then my Patch.wsx:
=======================================
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" > 
    <?include BuildVariables.wxi ?> 
    <Patch AllowRemoval="yes" 
           Classification="Update"
           Manufacturer="$(var.Manufacturer)"
           Description="Patch"
           DisplayName="Patch $(var.CurVersion)">
        <Media Id="1000" Cabinet="´Patch.cab" EmbedCab="yes">
            <PatchBaseline Id="Patch" />            
        </Media> 
        <PatchFamily Id="ScanXNETPatchFamily"
                     Version="$(var.CurVersion)"
                     Supersede="yes">
            <ComponentRef Id="ComponentCommonExtensions" />
            <ComponentRef Id="ComponentMainClient"/>
        </PatchFamily>        
    </Patch>       
</Wix>

BuildVariables.wxi is simply a number of preprocessor variables, which is 
shared with the installer project. 

Now, as I said, with 3.7 I get this result: 
Updating file information.
Creating cabinet files.
There will be '8' threads used to produce CAB files.
Patch.wxs(20) : warning PYRO1079 : The cabinet 'ïPatch.cab' does not contain 
any files.  If this patch contains no files, this warning can likely be safely 
ignored.  Otherwise, try passing -p to torch.exe when first building the 
transforms, or add a ComponentRef to your PatchFamily authoring to pull changed 
files into the cabinet.
Creating cabinet '\Local\Temp\kvov1bbk\#ïPatch.cab'.
Generating database.
diff.wixmst : error PYRO0227 : The transform being built did not contain any 
differences so it could not be created.

Which is probably an indication of what is actually wrong. With 3.5 I get an 
empty msp. 

What am I doing wrong?








------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to