Hi,

I faced the problem what you mentioned below. My project MSI is
comprised of many merge modules. So I can't create patch in the method
you suggested.
So I tried a different method for creating the patch as shown below. 

patch.wxs:

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
  
  <PatchCreation
      Id="{7B977D96-4062-485c-879A-46A1908B244A}"
      CleanWorkingFolder="yes"
      OutputPath="patch.pcp"
      WholeFilesOnly="yes" >

    <PatchInformation
        Description="Patch Sample"
        Comments="Sample Patch"
        ShortNames="no"
        Languages="1033"
        Compressed="yes"
        Manufacturer="AMN"/>

    <PatchMetadata
        AllowRemoval="yes"
        Description=" Patch Sample"
        ManufacturerName="AMN"
        TargetProductName="Sample Product"
        MoreInfoURL="www.amn.com"
        Classification="Update"
        DisplayName=" Sample Patch"/>

    <Family DiskId="5000"
        MediaSrcProp="$(var.OEMProductLine)"
        Name="$(var.OEMProductLine)"
        SequenceStart="5000">
      <UpgradeImage SourceFile="$(var.UpgradeImageFile)"
                    Id="UpgradeImage">
        <TargetImage SourceFile="$(var.TargetImageFile)" 
                     Order="2" 
                     Id="TargetImage" 
                     IgnoreMissingFiles="no" />
      </UpgradeImage>
    </Family>

    <PatchSequence PatchFamily="SCMPatchFamily"
        Sequence="1.0.0.0"
        Supersede="yes" />

  </PatchCreation>
</Wix>


Steps to create the patch file:

1) Extract the target msi into the target folder:
*       msiexec.exe -a 1.0\1.msi /qb TARGETDIR=E:\1.0\admin

2)      Extract the updated msi into the target folder:
*       msiexec.exe -a 1.1\2.msi /qb TARGETDIR=E:\1.1\admin

8)      Build the patch script:
*       candle.exe patch.wxs
*       light.exe patch.wixobj -out patch\patch.pcp

9)      Create the .msp file:
*       "C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\MsiMsp.Exe"
-s patch\patch.pcp -p patch\patch.msp -l patch.log

10)     Install 1.0\1.msi and then patch\patch.msp.

In the  patch script with this(Patch.wxs) , we need to give ,
*       TargetImage = first msi 
*       UpgradeImage = latest MSI 

Hope it will solve your problem.

Thanks,
S. Preethi.


-----Original Message-----
From: wix_newbie77 [mailto:james.bam...@siemens.com] 
Sent: Friday, July 15, 2011 1:26 PM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Error building patch msp with pyro :The cabinet
'setup.cab' does not contain any files

Hello everybody, 

I have a huge problem with creating a patch. 

I recieve the error "The cabinet 'setup.cab' does not contain any
files". 

I tried to create the patch by using the following commands: 

candle.exe Patch.wxs -out Patch.wixobj 
light.exe Patch.wixobj -out Patch.wixmsp 

torch.exe -p -xi patch\old\SamplePatchProjectSetup.wixpdb
patch\new\SamplePatchProjectSetup.wixpdb -out Patch.wixmst 

pyro.exe Patch.wixmsp -out Patch.msp -t setup Patch.wixmst 


I am completely sure that the files within the MSI's have changed.
Checked
that the size and file version of the files are different using Orca. 

When executing the commands above, the Patch.msp is built, but when
examined
with 7.zip it seems to be empty. The last command (pyro) gives the
following
warning: 

error PYRO0252 : No valid transforms were provided to attach to the
patch.
Check to make sure the transforms you passed on the command line have a
matching baseline authored in the patch. Also, make sure there are
differences between your target and upgrade. 

I'm not sure if it's possible to create a patch, if the .wxs-File
doesn't
change between the two versions but only the content of the files within
the
.MSI. I Read in a forum, that torch.exe compares every file byte by byte
to
specify if there is a difference. 

Am I on the wrong track or is there a way to create a patch if only the
content of the files have changed but the .wxs-File itself not? 

My Patch.wxs File 
<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
        <Patch 
      AllowRemoval="yes" 
      Manufacturer="SampleManufacturer.org" 
      MoreInfoURL="http://www.SampleManufacturer.org";
      DisplayName="SamplePatchProject Update to 1.0.1.1" 
      Description="This is a small update to SamplePatchProject 1.0.1.1"

      Classification="Update">

                <Media Id="5000" Cabinet="setup.cab" EmbedCab="yes">
                  <PatchBaseline Id="setup" />
                </Media>

                <PatchFamily Id="main_patch" Version="1.0.0.0"
Supersede="yes">
                  <ComponentRef Id="SamplePatchProject" />
                  <ComponentRef Id="VersionInfo" />
                </PatchFamily>
        </Patch>
</Wix>


My Product.wxs File 
<?xml version="1.0" encoding="UTF-8"?> 
<?include config.wxi ?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";>
  <Product Id="$(var.ProductCode)" Name="$(var.ProductName)"
Language="1033"
Version="$(var.ProductVersion)"
Manufacturer="$(var.ProductManufacturer)"
UpgradeCode="$(var.UpgradeCode)">
    <Package Id="$(var.PackageCode)" Compressed="yes"
Keywords="Installer"
Description="___Description" Comments="___Comments"
InstallerVersion="200"
/>
    
    <Media Id="1" Cabinet="setup.cab" EmbedCab="yes" />
        
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="siemens" Name="Siemens">
            <Directory Id="INSTALLLOCATION" Name="SamplePatchProject">
              <Component Id="SamplePatchProject"
Guid="YOURGUID-ebd7-4f80-b024-bbc2137b9712">
                <File Id="SamplePatchProject.exe"
Name="SamplePatchProject.exe" DiskId="1"
Source="files\SamplePatchProject.exe" KeyPath="yes"/>                
              </Component>
              <Component Id="VersionInfo"
Guid="YOURGUID-a1ee-4514-91e5-07b350605714">
                <File Id="VersionInfo.txt" Name="VersionInfo.txt"
DiskId="1"
Source="files\VersionInfo.txt" KeyPath="yes"/>
              </Component>
            </Directory>
        </Directory>
      </Directory>
    </Directory>
    
    <Feature Id="main" Title="Main" Level="1">
      <ComponentRef Id="SamplePatchProject" />
      <ComponentRef Id="VersionInfo" />
    </Feature>
    
    <UIRef Id="WixUI_Minimal" />
  </Product>
</Wix>

My config.wxi File 
<?xml version="1.0" encoding="utf-8"?> 
<Include>
  <?define ProductCode = "YOURGUID-629b-4c66-8e8e-829c97f01488" ?> 
  <?define PackageCode = "*" ?> 
  <?define UpgradeCode = "YOURGUID-3390-4706-ac89-469163b7c3f9" ?> 
  
  <?define ProductVersion = 1.0.1.1 ?> 
  <?define ProductManufacturer = "SampleManufacturer.org" ?> 
  <?define ProductName = "SamplePatchProjectSetup" ?> 
</Include>


Note: GUID's have been modified for this post. 


Dearly hope that someone can help me out, i've tried everything without
luck. 

Thanks in advance. 

wix_newbie77

--
View this message in context:
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Error-buil
ding-patch-msp-with-pyro-The-cabinet-setup-cab-does-not-contain-any-file
s-tp6586162p6586162.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------
------
AppSumo Presents a FREE Video for the SourceForge Community by Eric 
Ries, the creator of the Lean Startup Methodology on "Lean Startup 
Secrets Revealed." This video shows you how to validate your ideas, 
optimize your ideas and identify your business strategy.
http://p.sf.net/sfu/appsumosfdev2dev
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Magic Quadrant for Content-Aware Data Loss Prevention
Research study explores the data loss prevention market. Includes in-depth
analysis on the changes within the DLP market, and the criteria used to
evaluate the strengths and weaknesses of these DLP solutions.
http://www.accelacomm.com/jaw/sfnl/114/51385063/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to