在构建和组件问题时生成WiX XML文件

时间:2009-03-04 18:09:52

标签: wix installation windows-installer

我正在尝试为我创建的网站编写安装程序。在WiX教程中,它说:“同样,组件应该只包含如此强大的项目,以至于它们总是需要一起安装或删除。”我相信整个网站都适合这种描述。我有2个关于组件的问题。第一个是显然我的网站有很多目录,我无法弄清楚如何将所有目录/文件放入1个组件(这甚至可能吗?)如果我从程序中生成我的组件我的GUID几乎肯定要每个版本都有不同强制每个版本更改主要版本?有什么我想念的吗?

3 个答案:

答案 0 :(得分:2)

组件的文件不能跨越目录。 Windows Installer的限制。获得稳定的组件ID是一个棘手的问题,但是WiX v3中有一些新的技巧可以为您解决这个问题。 Component / @ Guid =“*”就是诀窍。新的(如上周)heat.exe将为您生成似乎符合您需求的碎片。

答案 1 :(得分:0)

我必须承认,我在WIX的经验非常有限。但是,我的印象是组件映射到单个可安装的东西,如文件或DLL。它们被安排到组件组中,然后添加到组件中。这些功能是作为单元安装的功能,例如:核心,文档和示例。在这种情况下,您总是需要Core组件,但可以省略文档和示例功能。

我认为更改组件的GUID不会强制您更改主版本号。

我自己很难与WIX一起学习,因为学习曲线非常陡峭。我希望这会有所帮助。

答案 2 :(得分:0)

经历过这个,这是我的建议:

  1. 每个文件都应该有自己的组件。
  2. 如果您按照第1步的说法执行操作,则每个组件都可以包含属性GUID="*"
  3. ComponentGroup是你的朋友:)
  4. 如果将ProductCode设置为*并将UpgradeCode保留为固定GUID,则不必为每次升级编写新的升级安装程序,因为MSI既是新安装安装程序又是升级安装程序。帮助控制此you need to understand升级和升级版本元素。
  5. 更多tricks here