NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Using the TestStand Command Line Deployment Build Tool (BuildTSD.exe) to set the Deployment Version of a TestStand Deployment file (.tsd)

Hello all! Utilizing TestStand's Command Line Deployment Build Tool (BuildTSD.exe), shipped with every version of TestStand from version 2013 and beyond (TestStand Command Line Deployment Build Tool - NI Community), I am unable to set the Deployment Version of a TestStand Deployment file (.tsd) utilizing the Build Tool's (BuildTSD.exe) /versionString command line switch. Instead, the command line switch seems to set the Installer Version (the executable artifact built by the TestStand Deployment Utility to actually distribute your test system/solution) of a TestStand Deployment file (.tsd).

 

NI_Forums_Post_1.png (Deployment Version of a TestStand Deployment file depicted above within the TestStand Deployment Utility) 

 

Here is an example:

(The TestStand Deployment file used here includes a TestStand Workspace file (.tsw) with one TestStand Project file (.tpj) within the workspace, and the TestStand Project file includes three empty TestStand Sequence files (.seq))

 

NI_Forums_Post_2_Annotated2.png

 

 

The documentation for the TestStand Deployment Utility Build Tool (BuildTSD.exe) DOES NOT give a description of the /versionString command line switch:

(https://forums.ni.com/ni/attachments/ni/7324/666/1/BuildTSD%20Documentation.pdf)

 

Two questions for the community:

 

  • Is setting the Installer Version (the executable artifact built by the TestStand Deployment Utility to actually distribute your test system/solution) instead of the Deployment Version of the distribution (the actually version that appears within Apps and Features, under the application name set in the "Installation Name" field within the "Installer Options" tab of the TestStand Deployment Utility) the intended behavior of the /versionString command line switch for the TestStand Deployment Utility Build Tool (BuildTSD.exe)?
  • How would one programmatically set the Deployment Version of a TestStand Deployment file (.tsd)? A fellow member of the forums posted a similar question of how one would retrieve the Deployment Version of a TestStand Deployment file (.tsd), and another angel of the forum answered the question by providing a solution in the form of a .vi that ingests the (.tsd) file as ANSII encoded characters, searched for a specific series of preamble characters within the file starting the search at the beginning of the file, then retrieved the next few characters following the preamble that represents the Deployment Version of the TestStand Deployment file (.tsd). Utilizing our forum member's strategy, I was able to set the Deployment Version of the file by replacing those bytes after the preamble with my own version utilizing a hex editor. Is this truly the only method available to set the Deployment Version of a TestStand Deployment file programmatically?  

 

Thank you community! Please let me know if you need me to provide any additional details. 

 

All the best,

Erik

0 Kudos
Message 1 of 2
(1,719 Views)

Hello Erik,

 

As you correctly noticed, calling BuildTSD.exe /versionString "1.1.0"  "MyBuildSpec.tsd"  does produce and installer for a Product of a version "1.1.0". 

Im curious what is your use case that requires programmatic update of deployment version as it has no impact on the product (installer) built by .exe. 

 

Roman

 

0 Kudos
Message 2 of 2
(1,646 Views)