【问题标题】:How to generate an installer with Installshield from any branch如何从任何分支使用 Installshield 生成安装程序
【发布时间】:2016-03-22 17:03:42
【问题描述】:

我有一个结构如下的分支模式:

  • 开发
    • 分支 1
    • 分支 2。 . .

我已经从 Develop 分支成功创建了我的安装程序项目,但我无法从其他分支(如分支 1 或分支 2)生成安装程序。

要从其他分支生成安装程序,我需要删除并再次添加项目输出。

我的目标是从 Develop 生成一个分支,并能够从该分支生成安装程序,而无需进行任何更改。有可能吗?

已编辑:

项目内的文件我可以使用相对路径插入它。但是指向项目(dll 或可执行文件)的主要输出我无法插入相对路径。

问题是,当我从开发(已配置所有内容)路径为 dll 或可执行文件创建一个分支时,主要输出仍然指向开发分支,这使安装程序无法工作。

【问题讨论】:

  • 如果你从 TFS 内部的TFVC to Git 切换,这样的事情会容易得多,因为分支仍然由相同的路径表示。然而,从 TFVC 模式转换到 Git 模式并非易事,变更集历史记录等信息可能会丢失。
  • 毫无意义。源代码应始终使用相对路径引用或其他抽象,以便不需要绝对路径。这适用于从一个开发人员到另一台开发人员机器、一个构建框到另一个或一个分支到另一个的工作区。 TFVC 从根本上来说没有任何问题,切换到 Git 可以解决问题。
  • 他在哪里说他无论如何都使用 TFS?
  • 我正在使用 TFS。但是改变 Git 是不切实际的。
  • 我也面临同样类型的问题。如果我将安装程序项目从另一台机器转移到我的机器上,那么很难更改所有相对路径。

标签: c# windows-installer installshield-2013


【解决方案1】:

您的安装程序应该位于同一个分支中并使用相对路径引用,这样就不会出现问题。否则,您可以使用 InstallShield 路径变量来弥补差距。

【讨论】:

  • 您好,感谢您的回答。我已经编辑了我的问题并包含了更多信息。我可以对项目内的文件使用相对路径(它工作正常),但是当主要输出是 dll 或可执行文件时,我无法插入相对路径。事实上,这条路甚至出现了,这让我相信它应该适用于任何分支。但是当我检查路径时,它仍然指向开发分支。
  • 我个人不建议使用项目引用或将 InstallShield 代码和应用程​​序代码保留在同一个解决方案中。我喜欢做的是在一个解决方案中使用应用程序,并使用构建后事件在安装程序解决方案下的目录中暂存已部署应用程序的模型,InstallShield 可以通过相对路径访问该目录。然后我根据我想要部署的文件明确地创作我的组件。
  • 这是一个有趣的方法,你有例子吗?我不知道如何在不同的解决方案中制作 installshield 项目!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-08-04
  • 1970-01-01
  • 2013-08-28
  • 1970-01-01
  • 1970-01-01
  • 2017-05-28
  • 1970-01-01
相关资源
最近更新 更多