0

我正在尝试为我创建的网站编写安装程序。在 WiX 教程中,它说“同样,一个组件应该只包含非常强烈地属于在一起的项目,以至于它们总是需要一起安装或删除。”。我相信整个网站都符合这个描述。我有两个关于组件的问题。首先是显然我的网站有很多目录,我不知道如何将所有目录/文件放入一个组件中(这甚至可能吗?),如果我从程序生成我的组件,我的 GUID 几乎肯定必须每个版本都不同,每个版本都会强制更改主要版本?有什么我想念的吗?

4

3 回答 3

2

组件的文件不能跨越目录。Windows 安装程序的限制。获得稳定的组件 ID 是一个棘手的问题,但是 WiX v3 中有一些新技巧可以为您处理这个问题。Component/@Guid="*" 是诀窍。新的(如上周)heat.exe 将为您生成似乎满足您需求的片段。

于 2009-03-13T01:21:44.493 回答
0

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

我不认为更改组件的 GUID 会迫使您更改主要版本号。

我自己在使用 WIX 时遇到了困难,因为学习曲线可能非常陡峭。我希望这有帮助。

于 2009-03-04T18:26:56.737 回答
0

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

  1. 每个文件都应该有它自己的组件。
  2. 如果您按照步骤 1 进行操作。正如 Rob 所说,每个组件都可以具有属性GUID="*"
  3. ComponentGroup 是你的朋友 :)
  4. 如果将 ProductCode 设置为 * 并将 UpgradeCode 保留为固定 GUID,则不必为每次升级编写新的升级安装程序,因为您的 MSI 既是新的安装安装程序,也是升级安装程序。为了帮助控制这一点,您需要了解Upgrade 和 UpgradeVersion 元素。

这里还有一些技巧

于 2009-07-14T01:27:13.557 回答