为什么 Installshield msp 大小很大

Why Installshield msp size is big

我有两个 msis,大小大约为 17MB,这两个 msis 之间的差异很小。当我通过 Patch Design 生成补丁时,输出 msp 大约为 15MB,这不正确,因为不存在这样的差异。这是什么原因?我如何验证我是否只修补了这两个 MSIS 之间的差异? 请注意,所有文件都通过动态链接选项添加到 msi。 我在 msi Diff 工具中打开了两个 msis,我注意到每个文件的状态为已删除和已添加,我认为它以某种方式比较组件名称而不是实际文件。因为所有的msi文件都是通过"Dynamic Linking"选项抓取的。

您在构建补丁时是否使用了补丁优化? 这对你的情况应该有所帮助。

查看以下文档:

http://helpnet.installshield.com/installshield18helplib/UpgradeConsiderations.htm

此外,当您构建补丁时,可以选择包含整个文件或差异文件。确保使用该选项。

我的回答是,由于为每个新 msi 生成的动态根文件夹,msp 将其视为一个新文件。 因此,如果我在旧的 msi 中有一个像 C:\abc.txt 的文件路径,而在新的 msi 中它变成了 C:\abc.txt,msp 正在拉 abc.txt 作为区别虽然它没有改变,但看起来它比较的是完整路径而不仅仅是文件名(我对 msi 中的文件使用组件)。 解决方案是将根路径设置为静态。