根据本教程,我正在使用 PCP 构建补丁:
http ://wix.sourceforge.net/manual-wix3/patch_building.htm
我有两个 MSI(提取为管理员安装)
- 8.11.9.225(这是我要更新的目标)
- 8.11.9.353(最新的)。
上面的过程没有任何问题,并生成了我的 .msp 文件,但文件很大(500+ MB),所以我认为差异太大了。
但是,每当我尝试安装此补丁时,它都会显示更改/修复对话框,如果我使用更改或修复,在这两种情况下都会出现错误
“已安装另一个版本。您必须先卸载它才能安装此版本。”
我什至更改了第二个 msi 中的产品代码(在所有表中),但它不能解决任何问题。
这是我的补丁代码:
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<PatchCreation
Id="{ff8364b1-f222-48fb-bc6b-cfb37b38fcdf}"
CleanWorkingFolder="yes"
OutputPath="ABD_Patch_353.pcp"
WholeFilesOnly="yes"
AllowProductCodeMismatches="yes"
>
<PatchInformation
Description= "Patch for build 225"
Comments= "Patch for build 225"
Manufacturer= "Farrukh"
/>
<PatchMetadata
AllowRemoval= "yes"
Description= "Patch for build 225"
ManufacturerName= "Farrukh"
TargetProductName="My Product 08.11.09.225"
Classification= "Update"
DisplayName= "My Product 08.11.09.225"
/>
<Family DiskId="5000"
MediaSrcProp="ABD_225"
Name="ABD_225"
SequenceStart="5000">
<UpgradeImage Id="ABD_353" SourceFile="D:\ABD\353\My_Product.msi" >
<TargetImage Id="ABD_225" SourceFile="D:\ABD\225\My_Product.msi" Order="2" IgnoreMissingFiles="no" />
</UpgradeImage>
</Family>
<PatchSequence PatchFamily="ABDPatchFamily"
Sequence="1.0.0.0"
Supersede="yes"
/>
</PatchCreation>
</Wix>
由于它正在生成一个大尺寸的 .msp,我应该将 msp 用于这种尺寸还是进行重大升级?
任何帮助将不胜感激
最好的祝福