【问题标题】:Installing WiX 3.5 alongside WiX 3.0将 WiX 3.5 与 WiX 3.0 一起安装
【发布时间】:2011-03-28 00:43:35
【问题描述】:

是否可以同时安装 WiX 3.0 和 3.5?如果我在安装 3.0 之后安装 3.5,它会删除 3.0 文件 - 如果我尝试在 3.5 之后安装 3.0,它会告诉我已经安装了更新的版本。

我正在从 VS 2008 迁移到 VS 2010,所以我的应用程序的一个版本(分支)正在使用 VS 2008(现有生产版本),另一个在 VS 2010(未来版本)中。 VS2010 需要 WiX 3.5。

这意味着在我的构建服务器上,目前,我无法同时构建当前版本和新版本,因为会报告找不到 WiX 文件的错误:

c:\buildAgent\work\fe55ddb47cebe4fd\MyApp.wixproj(25, 11): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\WiX\v3.0\Wix.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

我不希望将我的产品的当前版本升级到 WiX 3.5,因为 3.5 仍处于测试阶段,而且我不得不选择每周构建一次才能让它工作(我只是希望当我的下一个版本准备好时,WiX 3.5 将稳定)。

有没有办法并排安装?是否只需将 3.0 的文件复制到 Msbuild 目录中?

【问题讨论】:

    标签: msbuild wix


    【解决方案1】:

    我结束了:

    • 使用 .MSI 包安装 WiX 3.5.1916(后来的版本以奇怪的方式失败,我没有花太多精力去弄清楚)

    • 将以下文件复制到构建服务器:

      • %programfiles%\Windows Installer XML v3**
      • HKLM\SOFTWARE\Microsoft\Windows Installer XML\3.0 (SOFTWARE\Wow6432Node\ 适用于 x64 系统)
      • %programfiles%\MSBuild\Microsoft\WiX\v3.0**

    它现在构建成功,但我没有对生成的文件进行太多测试。所以似乎可以同时拥有 3.0 和 3.5,让它工作只是一个小麻烦。

    【讨论】:

      【解决方案2】:

      wix 目前的设计方式是不能在同一台机器上同时安装 3.0 和 3.5。他们确实提供了 wix 的 zip 版本,使您能够让您的构建自动化将 wix 自行部署到构建服务器上以绕过此限制。不过,您确实会失去某些东西,例如 Visual Studio 集成。

      【讨论】:

      • 您能否详细说明设计中究竟是什么阻止了两者?
      • 我不能确切地告诉你(我不在 WiX 团队中),但它从升级表中删除前一行的行开始。潜在的实际原因将是一大堆未完全隔离的组件。没有版本选择器概念的竞争文件扩展名、相互冲突的 Visual Studio 插件等等。核心 Bin 可以在构建期间被复制,但作为一个整体的工具集不能以当前形式并存。
      猜你喜欢
      • 2014-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-17
      • 2023-04-02
      相关资源
      最近更新 更多