安装程序
<Product Id="111" Name="111" Language="1049" Version="1.0.0.0" Manufacturer="11" UpgradeCode="111" Codepage="1251">
<Package InstallerVersion="200" Compressed="yes" />
<DirectoryRef Id="Messages">
<Component Id="1">
<File Id="1" Name="1" Source="Messages\1.xml" DiskId="1" KeyPath="yes" />
</Component>
<Component Id="2">
<File Id="2" Name="2" Source="Messages\2.xml" DiskId="1" KeyPath="yes" />
</Component>
有必要更新组件2并添加组件3.组件1不应该更新为现在的组件。 如何使用新的msi实现它?
答案 0 :(得分:1)
你可以使用Patch(如果你只想包含这些“差异” - 没有comp1),但它会创建 .msp 文件而不是.msi 或Minor Upgrade - 要在此处升级文件,您可以设置一些安装选项(但必须使用 msiexec 示例:
msiexec /i msiname.msi REINSTALL=ALL REINSTALLMODE=vomus
您可以在此处更改REINSTALL和REINSTALLMODE属性。
我更喜欢Patch选项我给你链接到教程,现在来自我的东西,要获得 .msp 文件你需要2个文件夹,一个是旧版本,第二个是新版本(两个目录)对于这两个目录,你必须为这两个目录创建安装程序 - 设置不同的路径(不能是同一个文件夹,因为你不会使用.msi 文件以获得差异,但 .wixpdb !!)。接下来,您将获得教程( patch.wxs 代码)中的代码。在<PatchFamily>
元素中,您使用<ComponentRef>
元素来选择应检查哪些组件。如果存在一些差异,则会将其添加到 .msp 文件中。
您可以使用 Orca.exe 检查 .msp 文件中的内容。首先,您必须打开安装程序(无需更改)并获取表单菜单转换 - &gt;查看补丁... 就是这样!