TestStand Support

Package Builder supports creating packages for TestStand based deployments, similar to the TestStand Deployment Utility. Package Builder supports including sequence files, code modules, and other TestStand files in one or more packages.

Refer to the Deploying TestStand Systems topic in the TestStand help for learning about TestStand deployment-related concepts and selecting the most effective mechanism for creating one or multiple deployments depending on the functional and maintenance requirements of the test system and related deployment.

Note The installation of Package Builder installs both a 32-bit and a 64-bit version of Package Builder. If you deploy TestStand files, you must use the version of Package Builder that matches TestStand's bitness.

Feature Comparison Between TestStand Deployment Utility and Package Builder

Currently, Package Builder does not offer built-in capability to perform some features available in other NI distribution builders, such as TestStand Deployment Utility. The following table compares features for building deployments with TestStand Deployment Utility and with Package Builder.

Deployment Feature

TestStand Deployment Utility (MSI)

TestStand Deployment Utility (Packages)

Package Builder

Create MSI distributions

N/A

X

Create packages, packages installers, and local repositories

N/A

Solution supports creating multiple distributions

X

X

Support command-line for continuous integration

Import hardware configuration information from Measurement & Automation Explorer (MAX)

✓*

Display custom readme after installation

✓*

Register ActiveX DLL and EXE servers

X

✓*

Create program items, such as shortcuts

Launching a custom license agreement at install time

X

Support for launching third-party installers after installation

X

X

✓*

Configure system to use Volume License Manager service

X

✓*

Associate executable file with specific file extensions

X

✓*

Activate NI licenses

X

✓*

Automatically including NI package dependencies, such as drivers, for LabVIEW and .NET code modules

X

Adding .NET assemblies to the GAC

X

X

✓*

Installing custom EULAs

X

X

Setting Windows environmental variables

X

X

✓*

Creating Windows registry keys and values

X

X

✓*

TestStand/LabVIEW Specific Features

Selecting files to deploy from a workspace

Discover dependent sequence files and code modules of top-level sequence files

Support for fixing paths from sequence files to files that NI step types use, and call modules for steps that use LabVIEW, LabWindows/CVI, C/C++ DLL, .NET, and Python Adapters

Support for sequences that call loose VIs, VIs in classes, libraries, LabVIEW projects, packed project libraries (PPLs), Express VIs, and performing property node calls

Support deploying using TestStand environment files

Deploying PPLs and Projects specified in the Override Module Dialog

Support for building VI code modules called in the context of a LabVIEW project into PPLs

X

Support for building loose VI code modules into PPLs

X

Automatic detection of NI package dependencies such as drivers for LabWindows/CVI DLLs and LabVIEW binaries rebuilt by builder

X

* Use post-install custom commands to perform this operation. Refer to How to Execute Pre/Post-Install Custom Commands for more information.

TestStand Sequence File Dependency Support for LabVIEW Files

The following table lists the various types of LabVIEW code module files and how Package Builder displays these files in the Input pane as dependencies and in the Editor pane when you include them in a package.

Type of dependency

File type

How Package Builder displays dependencies and files in packages

VI path in a LabVIEW step

LabVIEW VI

Package Builder displays a VI file as a dependency of the sequence file. The Editor pane displays projects that contain VIs stored in a LabVIEW library (*.llb) or packed project library (*.lvlibp). VIs stored within LabVIEW containers are not visible because they are not actual files on disk.

Class path in a LabVIEW step with the Class Member call type, or in the Configure Property Node dialog

LabVIEW class

Package Builder displays a LabVIEW class file as a dependency of the sequence file. The Editor pane displays files that contain classes within a LabVIEW library (*.llb) or packed project library (*.lvlibp). Classes stored within LabVIEW containers are not visible in the Editor pane, because they are not actual files on disk. The Editor pane does not display member VIs of LabVIEW classes. Package Builder automatically includes them when building a package.

Project path in a LabVIEW step

LabVIEW project

Package Builder displays a project file as a dependency of the sequence file. VIs contained within the project are not visible in either the Editor or Input pane. Package Builder automatically includes them in a sub-directory located where the project is staged. To include all VIs specified in the project, select the project file in the Editor pane, and enable the Include all files in LabVIEW project property.

VI path specified in Override Module dialog

LabVIEW Packed Project Library (PPL)

Packed Project Libraries always contain these VIs. Package Builder automatically stages them to the location specified in the module tab for the corresponding LabVIEW step. VIs specified in the override dialog are not visible in either the Editor or Input pane. If the module tab of another step references the PPL, the Input pane will display the file.

Project path specified in Override Module dialog

LabVIEW project

This optional LabVIEW project references the VI in the Override Module dialog. Package Builder automatically stages them to the location specified in the module tab for the corresponding LabVIEW step. VIs specified in the Override Module dialog are not visible in the Input pane or Distribution Editor pane. If the module tab of another step references the project, the Input pane will display the file.

Note You cannot directly migrate a TestStand Deployment Utility deployment to Package Builder. To re-create your deployment in Package Builder, you can add your existing TestStand source files to a new Package Builder solution and configure your packages.