WiX和WiX Toolset有哪些限制?

Ale*_*vis 19 wix

我试图找到一篇文章或发布列出WiX(Windows Installer XML)/ WiX Toolset的功能限制但未成功.使用WiX几周后,我可以想到最近的RTM版本(v3.0)中至少有两个限制:

  • WiX Toolset无法制作引导程序(setup.exe).
  • WiX Toolset无法从COM 可执行文件中检索COM注册信息.

你能想到其他限制吗?在处理部署项目时遇到的问题?我认为这些信息对于学习WiX的人来说非常方便.

Chr*_*ter 21

我最简单的回答这个问题就是什么是WiX缺少的InstallShield(功能差距).

  • Bootstrapper/Chainer - WiX有一个名为Burn的引导程序,现在包含在WiX v3.6中.
  • XML Read - WiX只有CA用于编写非读取(AppSearch)XML文件
  • 文本搜索/替换 - InstallShield具有用于读取/写入非INI/XML文件的模式
  • 仅限MSSQL - 不支持Oracle和MySQL
  • 自动化接口 - 没有用于以编程方式更新/生成项目的DOM.必须使用原始XML完成所有操作.
  • 没有本机IIS 7支持 - WiX v3.5提供本机IIS7支持
  • 主要是纯文本工具集.没有用于繁重工作的GUI设计师(参见IsWiX).XML很简洁,有它的位置,但它就像比较Notepad和Blend.

我已经用热量来相当成功地提取COM,所以我不再关心它了.


Yan*_*nko 12

我会补充几点,但这些很难被称为严重的限制,因为它们都可以解决:

  • 没有现成的工具可以将变换(MST)嵌入到MSI包中; 这是msidb.exe拯救的地方
  • 你必须做额外的工作来创建一个包含许多本地化的包,比如创建N个包,针对中性包生成N个语言转换,将这些转换嵌入到包中,指示你的引导程序调用正确的语言转换
  • WiX 3.0具有相当有限的IIS扩展 - 它仅在IIS 6兼容模式下支持IIS 7; 但幸运的是,WiX 3.5不再适用
  • 默认情况下,Heat无法生成"1个组件 - N个文件".是的,我知道,不推荐,但有时你需要它; 幸运的是,您可以使用XSL以您喜欢的方式转换热量输出
  • UtilExtension的PermissionEx没有用于仅在文件夹上设置ACL的开关.如果您只需要为已安装的文件设置ACL,则这非常小.但我必须通过快速修复来修补WiX才能在现有文件系统树上说"仅将这些权限应用于文件夹"

让我再说一遍,我不认为这些严重的限制.我对Rob和团队到目前为止所做的事情感到非常满意,他们正走在正确的轨道上!:)