Patchwiz.dll
若要生成修补程序包,建议使用修补程序创建工具,例如 Msimsp.exe 和 Patchwiz.dll。 Patchwiz.dll 版本 4.0 与使用早期版本的 Patchwiz.dll创作的包和修补程序兼容。 Patchwiz.dll 工具仅在适用于 Windows Installer 开发人员 的Windows SDK 组件中提供。
Patchwiz.dll 版本 4.0 具有一个新函数(UiCreatePatchPackageEx(Patchwiz.dll),它扩展了 UiCreatePatchPackage (Patchwiz.dll)的功能。 这些函数采用修补程序创建属性文件(.pcp 文件)并生成安装程序 修补程序包。
.pcp 文件是一个二进制数据库文件,其格式与 Windows Installer 数据库(.msi 文件)相同,但具有不同的数据库架构。 因此,可以使用用于安装程序数据库的相同工具创作 .pcp 文件。
可以使用表编辑器(如 Orca.exe)创建 .pcp 文件,以便将信息输入到 Windows Installer SDK 模板.pcp 提供的空白 .pcp 数据库中。 有关详细信息,请参阅 小型更新修补示例。
每个 .pcp 文件中都需要以下数据库表:
- 属性表(Patchwiz.dll)
- ImageFamilies 表 (Patchwiz.dll)
- UpgradedImages 表 (Patchwiz.dll)
- TargetImages 表 (Patchwiz.dll)
以下数据库表是可选的:
- UpgradedFiles_OptionalData 表(Patchwiz.dll)
- FamilyFileRanges 表 (Patchwiz.dll)
- TargetFiles_OptionalData 表(Patchwiz.dll)
- ExternalFiles 表 (Patchwiz.dll)
- UpgradedFilesToIgnore 表 (Patchwiz.dll)
在 Properties 表中,具有 MinimumRequiredMsiVersion 等于 300 的 .pcp 文件中需要下表。
注意
如果 MinimumRequiredMsiVersion 不等于 300,则表是可选的。
随 Windows Installer 3.0 一起发布的 Patchwiz.dll 版本可以自动生成修补程序序列化信息,并将其添加到新修补程序的 MsiPatchSequence 表。 PatchSequence 表 可用于手动添加 MsiPatchSequence 表的修补程序排序信息。 有关详细信息,请参阅 生成修补程序序列信息。
从 Patchwiz.dll 版本 2.0 开始,可以使用 修补程序信息缓存(Patchwiz.dll)来提高后续修补程序创建的速度。
对目标使用公共符号并升级映像二进制文件可能会减少大约一半的二进制修补程序大小。 有关详细信息,请参阅 使用符号来减小二进制修补程序大小。
可以指定在修补期间保留目标文件的某些区域,并保留这些区域中的信息。 有关详细信息,请参阅 修补文件的选定区域。
相关主题