基本MSI项目 - XML还是二进制?

时间:2016-05-24 18:11:38

标签: installshield installshield-2012

Installshield允许2种类型的项目文件类型 - XML&二进制,在基本的MSI项目中。

什么应该阻止我使用二进制类型的XML项目文件类型?

我列出了下面列出的2个,但这些是正确的吗?

  • 大项目文件的开启和关闭时间减慢
  • 可能会降低InstallShield编译/构建过程的速度

2 个答案:

答案 0 :(得分:1)

构建时间不受影响 加载时间也没有那么不同,我只是检查了我的一个项目,其中有大约6,000个文件,打开它的时间似乎几乎相同(在XML项目上可能慢1-2秒)

答案 1 :(得分:1)

根据您使用项目的方式,有两个潜在的显着差异:

  • 作为一个保守的秘密,二进制格式与Windows Installer自动化和编辑工具兼容,但XML格式通常不兼容。
  • 然而,XML格式更适合基于文本的查看,编辑,源代码控制或基于XML的自动化。

我知道有几个额外的差异我认为是不重要的:

  • 表示不同,因此您将在生成的项目文件中看到大小差异。
  • 这是一种转换,因为InstallShield在内部使用二进制格式,因此加载和保存项目文件需要一些(最少的)额外时间。
  • 在XML和二进制表示之间内部转换的代码很常用,但它仍然是转换。这种额外的复杂性,因此加载和保存为XML会有更多的潜在失败点。
  • 删除记录"中间有一些轻微的行为差异。"通过XML保存和加载将规范化并在最后添加新记录;在二进制中工作可能会重复删除记录的位置以用于下一条记录。但是,记录顺序在语义上并不重要。