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