Integrating with Microsoft Visual Studio Team Foundation Server

InstallShield 2018

Microsoft Visual Studio Team Foundation Server (TFS) is a set of tools and technologies that enable a team to collaborate and coordinate the tasks for developing a product. InstallShield has support for integrating with Team Foundation Server. Some highlights of this integration are:

Source control—Use the Source Control Explorer to integrate your InstallShield project with Team Foundation version control and manage changes to your InstallShield projects and your Visual Studio solutions.
Automated builds—Use Team Foundation Build to compile, test, and deploy your InstallShield projects and your Visual Studio solutions on a regular basis. Your installation is automatically updated with your latest source files every time your solution is built, always staying current.
Project management—Track work items such as bugs, tasks, and project documentation for your InstallShield projects and your Visual Studio solutions. The project status is available to your entire team from within Team System Web Access, and from within Team Explorer.

Integration Requirements

To integrate InstallShield with Team Foundation Server, install InstallShield on each machine that you want to be able to create, update, or build InstallShield projects. Thus, InstallShield should be installed on each machine on which you want to create and update 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. For InstallShield licensing details, refer to the InstallShield End-User License Agreement (EULA).

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.

In order for a build agent to build some types of projects and solutions, you may need to install additional software on the build machine. For example, to build a C++ project, which requires the C++ compiler and possibly other dependencies, install Visual Studio on the build machine.

If you are using multiple build agents to build your Team Foundation Server projects, you may want to assign a particular build tag to any agents that are on machines that have InstallShield; you could also apply that special build tag to each build definition that is created for an InstallShield project. That way, only build machines that have InstallShield installed would be used to build InstallShield installations. For more information about creating build tags and assigning them to agents and build definitions, see the Visual Studio Team Foundation Server documentation.

If you are queuing a build on a 64-bit build machine, ensure that you have configured the build definition for your InstallShield project so that the 32-bit version of MSBuild is used to load the InstallShield.Tasks.dll file (which is a 32-bit file); otherwise, you will encounter a build error informing you that the InstallShield.Tasks.dll file could not be loaded. To select the 32-bit version of MSBuild, click the Process tab of your build definition in Team Explorer. Then, under the Advanced node, find the MSBuild Platform setting, and select x86. Note that if you are using a 32-bit build machine, you can select either Auto or x86 for the MSBuild Platform setting.

If you install Team Explorer on the same machine that has InstallShield and Visual Studio, you can use Team Explorer from within your InstallShield projects that are open in Visual Studio. This enables you to perform tasks such as the following:

Use Source Control Explorer when you are working on your InstallShield projects.
Configure builds for your InstallShield projects and Visual Studio solutions.
Queue new builds.

Note that when you queue a build for a solution that includes an InstallShield project, the installation that is built is copied to an Install subfolder within the drop folder. When the InstallShield build detects that it is running under Team Foundation Build, it copies the installation to the final output location for the solution (OutDir)—namely, the binaries directory, which in turn is copied to the drop folder at the end of the Team Foundation Build process.

If you want to use Team Foundation source control when you are working on your InstallShield projects directly from within InstallShield (without Visual Studio integration), you can do so. To use this functionality, you need to install the Team Foundation Server MSSCCI Provider, which you can obtain from the Visual Studio Gallery on the MSDN Web site. Once the Team Foundation Server MSSCCI Provider is installed, you can add InstallShield projects to Team Foundation source control, check out InstallShield projects from Team Foundation source control, and check in projects to Team Foundation source control—all from within InstallShield. To learn more about source control integration within InstallShield, see Using Source Code Control.

See Also