如何在将代码签入TFS时自动生成安装文件

时间:2021-10-13 11:30:02

How do I integrate InstallShield/Wix/IsWix with TFS? I wish to auto generate setup files during successful TFS checkin/release?

如何将InstallShield / Wix / IsWix与TFS集成?我希望在TFS签入/发布成功期间自动生成设置文件?

I am comparing InstallShield with Wix and IsWix! to choose the right candidate for upcoming product development.

我将InstallShield与Wix和IsWix进行比较!为即将推出的产品开发选择合适的候选人。

Tools Used

使用的工具

  • v.Next Builds
  • v.Next Builds
  • Team Foundation Version Control
  • Team Foundation版本控制

Update from InstallShield support team

从InstallShield支持团队更新

To integrate InstallShield with Team Foundation Server, install InstallShield on each machine that u want to be able to create, update, or build InstallShield projects.It should also be installed on a machine that is designated as a build agent for InstallShield projects that are stored in Team Foundation Server.

要将InstallShield与Team Foundation Server集成,请在您希望能够创建,更新或构建InstallShield项目的每台计算机上安装InstallShield。它还应安装在指定为存储的InstallShield项目的构建代理的计算机上。在Team Foundation Server中。

NOTE: The Standalone Build is a build engine that enables you to build InstallShield projects without installing the full version of InstallShield on a build machine.If you have the Standalone Build, you can install it on a machine that is designated as a build agent for Team Foundation Server."

注意:独立构建是一个构建引擎,使您无需在构建计算机上安装完整版本的InstallShield即可构建InstallShield项目。如果您具有独立构建,则可以将其安装在指定为构建代理的计算机上Team Foundation Server。“

2 个解决方案

#1


2  

I have very limited experience with InstallShield, but I can advocate for WiX. Recently they added a no-install option that allows you to build WiX project by just adding a few files along to your sources.

我对InstallShield的经验非常有限,但我可以提倡使用WiX。最近,他们添加了一个无安装选项,允许您通过向源添加一些文件来构建WiX项目。

WiX code is an XML dialect and it is simple to generate, but the simplest pattern is to write a Product and a Project file and let Heat generating the remaining code you need for a simple install.

WiX代码是一种XML方言,生成起来很简单,但最简单的模式是编写Product和Project文件,让Heat生成简单安装所需的剩余代码。

#2


1  

At a high level you need to create an .ISPROJ (MSbuild ) and .SLN for your .ISM. In the ISPROJ you'll want to write some code to regex parse the build number and generate a random ProductCode for major upgrades.

在高级别,您需要为.ISM创建.ISPROJ(MSbuild)和.SLN。在ISPROJ中,您需要编写一些代码来正则表达式解析构建号并生成随机的ProductCode用于主要升级。

You'll add a build vs sln step to your build and tell it to use 32bit MSBuild (InstallShield doesn't support 64bit).

您将向构建添加构建vs sln步骤,并告诉它使用32位MSBuild(InstallShield不支持64位)。

https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch

https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch

http://helpnet.installshield.com/installshield22helplib/helplibrary/MSBuild.htm

http://helpnet.installshield.com/installshield22helplib/helplibrary/MSBuild.htm

You'll need an on-prem build server and install the InstallShield Stand Alone Build engine one it. I'd go ahead and install the Automation Interface also as you don't know when you'll need it some day.

您需要一个本地构建服务器并在其中安装InstallShield Stand Alone Build引擎。我会继续安装自动化界面,因为你不知道什么时候有需要它。

#1


2  

I have very limited experience with InstallShield, but I can advocate for WiX. Recently they added a no-install option that allows you to build WiX project by just adding a few files along to your sources.

我对InstallShield的经验非常有限,但我可以提倡使用WiX。最近,他们添加了一个无安装选项,允许您通过向源添加一些文件来构建WiX项目。

WiX code is an XML dialect and it is simple to generate, but the simplest pattern is to write a Product and a Project file and let Heat generating the remaining code you need for a simple install.

WiX代码是一种XML方言,生成起来很简单,但最简单的模式是编写Product和Project文件,让Heat生成简单安装所需的剩余代码。

#2


1  

At a high level you need to create an .ISPROJ (MSbuild ) and .SLN for your .ISM. In the ISPROJ you'll want to write some code to regex parse the build number and generate a random ProductCode for major upgrades.

在高级别,您需要为.ISM创建.ISPROJ(MSbuild)和.SLN。在ISPROJ中,您需要编写一些代码来正则表达式解析构建号并生成随机的ProductCode用于主要升级。

You'll add a build vs sln step to your build and tell it to use 32bit MSBuild (InstallShield doesn't support 64bit).

您将向构建添加构建vs sln步骤,并告诉它使用32位MSBuild(InstallShield不支持64位)。

https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch

https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch

http://helpnet.installshield.com/installshield22helplib/helplibrary/MSBuild.htm

http://helpnet.installshield.com/installshield22helplib/helplibrary/MSBuild.htm

You'll need an on-prem build server and install the InstallShield Stand Alone Build engine one it. I'd go ahead and install the Automation Interface also as you don't know when you'll need it some day.

您需要一个本地构建服务器并在其中安装InstallShield Stand Alone Build引擎。我会继续安装自动化界面,因为你不知道什么时候有需要它。