TestStand 2014 SP1 Bug Fixes


This document contains the TestStand Bug Fixes that were discovered before and since the release of TestStand 2014 SP1. Not every bug fix known to NI will appear on this list; it is intended to only show the severe and more common issues that have been addressed.

Each Issue appears as a row in the table and includes these fields:

  • Issue ID - the number at the top of each of the cells in the first column. When you report an issue to NI, you may be given this ID, you can also find IDs posted by NI on the discussion forums or in Knowledge Base articles.
  • Legacy ID (optional) -  If an issue has a legacy ID from NI's legacy/deprecated bug reporting database, you will see it appear on a separate line directly below the Issue ID in the table, or to the right of the Issue ID in the table of contents (separated by a space).
  • Issue Title: in italics - it describes the issue in one sentence or less
  • Problem Description - a few sentences which describe the problem in further detail. The brief description given does not necessarily describe the problem in full detail, and it is expected that you might want more information on an issue. If you would like more information on an issue feel free to contact NI (contact information below) and reference the ID number given in the document.
  • Workaround - possible ways to work around the problem. The workarounds that appear in the document are not always tested by NI and are not guaranteed to resolve the issue. If a workaround refers you to the NI KnowledgeBase, please visit www.ni.com/kb/ and enter that KB number in the search field to locate the specific document.
  • Reported Version - the earliest version of TestStand the issue was reported in. If you discover the issue appears in an earlier version of TestStand than is reported in this field, you can report that to NI (contact information below) to have the field updated.
  • Resolved Version - version the issue was resolved or was no longer applicable. If an issue has not been resolved "N/A" will be reported.
  • Date Added - the date the issue was added to the document (not necessarily the reported date)


Contacting NI

Feel free to contact NI regarding this document or issues in the document. If you are contacting NI in regards to a specific issue, be sure to reference the ID number given in the document to the NI representative. The ID number contains the current issue ID number as well as the legacy ID number (use the current ID number when contacting National Instruments). You can contact us through any of the normal support channels including phone, email, or the discussion forums. Visit the NI Website to contact us. 

Bug Fixes

The following items are Bug Fixes in TestStand 2014 SP1.

ID Legacy ID Fixed Issue Issue Details
.NET Adapter
A .NET reference stored as a subproperty of a step will not be released when execution is complete. The reference is retained even if the Unload All Modules command is used, and prevents the corresponding .NET assembly from being rebuilt since the .NET assembly will not be unloaded from memory.
C/C++ DLL Adapter; LabWindows/CVI
C/C++ DLL adapter and CVI adapter do not support passing a struct with an array pointer that points to an empty array. The following struct cannot be passed into or out of a code module if the *myArray parameter is an empty array:

struct foo
ArrayType *myArray;
Month and date are logged in an incorrect order when system is set to a European locale and the Microsoft ACE-OLEDB 12.0 database provider is used. This issue only occurs if the current date of the month is less than or equal to 12, and only occurs on systems where the current locale specifies that dates are logged in a day/month/year format. When this issue occurs, a date such as February 7, 2015 would be logged as July 2, 2015 and appear as 2/7/2015 in the locale display format.
When editing parameter settings for a database schema, "The expression cannot be empty" error will occur if the Expression field is empty, even if the field is disabled. This error will appear when attempting to close the Database Options dialog. The error is valid in some cases, such as when configuring an input parameter for a stored procedure, but is not a correct error message in cases where the Expression field is grayed out.
An incorrect warning about using On-The-Fly logging with stored procedures or commands may appear when saving a database schema which does not use stored procedures or command statements. The dialog appears when the Database Options dialog is closed. It is known to occur when the Generic Insert (NI) schema is used with On-The-Fly logging enabled, and may also occur with custom schemas.
Connecting to an ODBC data source with the Database Viewer may generate the error "The .NET framework data provider for OLEDB does not support the Microsoft OLE DB provider for ODBC drivers()MSDASQL). Use the .NET framework provider for ODBC." This issue occurs when you create a new data link in the Database Viewer and use the Build button to build a connection string based on an ODBC data source name. Because the resulting connection string does not specify a database driver to use, the Database Viewer uses OLE DB for the connection, which is not supported for ODBC connections. This issue only affects the Database Viewer and does not affect database logging during a TestStand execution.
TestStand Database Viewer will not display the time portion of the date and time column. For columns in a database which display a time and date, such as the START_DATE_TIME column of the UUT_STATUS table in the default schemas, only the date is displayed in the column. This only affects the appearance of the column within the TestStand Database Viewer; the data logged to the database includes a timestamp and a date.
The Readme document for TestStand 2014 32- and 64-bit did not list Windows Server 2012 R2 (64-bit) as a supported OS TestStand 2014 32- and 64-bit support Windows Server 2012 R2 (64-bit).
Clicking the Convert to Standard VI button on a LabVIEW Property Node Call step launches a dialog box that prompts you to select a VI from a LabVIEW project. When a LabVIEW Property Node Call step has a LabVIEW project specified, clicking the Convert to Standard VI button will launch a dialog that prompts you to select a VI from the specified project, rather than allow you to browse to a different directory or enter a name for the new VI.
Converting a LabVIEW property node call into a regular VI call may cause the resulting VI to be broken. This issue most often occurs when you set the location of the new VI to be in a separate location from the test sequence or LabVIEW code modules, and occurs because the VI is unable to locate the LabVIEW class being referenced by the property node call.
Stepping into a reentrant LabVIEW VI while debugging in TestStand may not allow you to return to the sequence to continue execution. If you step into a reentrant VI from TestStand during an execution, opening the block diagram of the VI in LabVIEW will cause the Return to Caller button to turn into a Run Continuously button and will not allow you to return to the TestStand execution.

This issue is fixed in LabVIEW 2015.
TestStand Update VI Calls tool claims FPGA VIs are broken and does not reload their prototypes. When you try to load a TestStand Step that references an FPGA VI and use the Update VI Calls tool, the Update VI Calls tool reports that the VI is broken and does not reload the reference. This VI loads correctly in TestStand and in LabVIEW.
LabVIEW error messages are not correctly reported in 64-bit TestStand when performing a cross-bitness call to a 32-bit LabVIEW VI if LabVIEW 64-bit is not installed. When using TestStand 64-bit to perform an out-of-process VI call with the LabVIEW 32-bit Development System, if the VI returns an error, TestStand will instead show an error with the code -17003 and the message "LabVIEW version 14.0 is not installed". This issue only occurs if the LabVIEW 64-bit Development System or 64-bit Runtime is not installed on the machine.
Steps which call LabVIEW VIs from a large LabVIEW project may load slowly when selected in the Steps pane if the VI prototype has changed. TestStand 2013 implemented a feature which optimizes the load time of LabVIEW VI prototypes when a LabVIEW adapter step is selected in the Steps pane. However, this optimization does not occur when the VI prototype has changed. This can result in slow load times for VI prototypes at edit time, especially for LabVIEW VIs which are part of a large LabVIEW project.
Error -18005: Failed to convert a TestStand type to a LabVIEW type or vice versa occurs when passing an empty Object Reference variable into a .NET Refnum parameter of a LabVIEW VI This error occurs when the LabVIEW adapter is configured to use the LabVIEW Runtime. If the LabVIEW Development System is being used, you may see Error -18002: A type mismatch error has occurred. The data type of one of the parameters passed to the VI does not match the data type that LabVIEW expects.
Type mismatch error may occur when calling a LabVIEW VI which has a .NET Reference parameter N/A
In very limited cases when selecting a step which uses the LabVIEW adapter, Sequence Editor may crash or object reference leaks may occur. In rare cases, the TestStand Sequence Editor may crash when a LabVIEW adapter step is selected. A PropertyObject leak may also occur when the TestStand Engine is shut down.
Microsoft Visual Studio
Unable to Update Visual Studio .NET C+ Include Directories error will occur when running the TestStand Version Selector to make 64-bit TestStand active on a Windows 8 or 8.1 system. This error indicates that the Visual Studio include directories are not being properly configured for 64-bit TestStand. The source code provided with TestStand, such as for user interfaces, will not compile successfully when targeted for a 64-bit platform.
Code module template for Microsoft Visual Studio 2013 incorrectly uses the Visual Studio 2012 toolset instead of the Visual Studio 2013 toolset. As a result of this issue, the Visual Studio 2012 version of the C++ compiler and other components will be used in the Visual Studio project, which may result in undesired behavior. Additionally, if Visual Studio 2012 is not installed on the system, an error may occur when Visual Studio 2013 attempts to access the Visual Studio 2012 components.
The 64// flag is ignored when accessing a synchronization object on a 32-bit operating system. When calling a synchronization object server on a 32-bit operating system, using the 64// flag to access the 64-bit synchronization object will instead return the 32-bit version of the synchronization object.
The Batch UUT dialog does not display UUT serial numbers if the serial numbers are set by programmatically modifying the UUT.SerialNumber property. The Batch UUT dialog provided by default with the Batch process model does not display serial numbers if the serial numbers are set programmatically in the Pre-Batch callback rather than entered into the dialog.
The SequenceFileLoad callback in process model may execute when a sequence file using that process model is analyzed with the Sequence Analyzer. When the Sequence Analyzer is used to analyze a sequence file, if the process model associated with that sequence file contains a SequenceFileLoad callback, that callback will be executed. This behavior only occurs if the NI_PrototypeCompatible or NI_SequencePrototypeMatch rules are enabled in the Sequence Analyzer.
Launching the stand-alone Sequence Analyzer application will cause the SequenceFileLoad callback of the station process model to execute. This could cause unexpected behavior if the SequenceFileLoad callback fails or does not complete before sequence file analysis begins.
On-the-fly HTML and ASCII reports generated with a result filtering expression contain unexpected duplicates of certain results. Unexpected duplicate results can appear in reports if all the following conditions are true:

  • You are generating reports in HTML or ASCII format

  • You are using on-the-fly reporting

  • You set the Select a Report Generator for Producing the Report Body option on the Contents tab of the Report Options dialog box to Sequence.

In this case, TestStand replaces a result that you expect TestStand to filter with a duplicate entry of the previous unfiltered result.
Reports using the ATML Horizontal stylesheets might not properly display numeric data in a container that also contains an array of waveform data. Numeric data that exists in a container below an array of waveform data may not display properly in an ATML5 report generated with the Horizontal stylesheet. The numeric data is stored in the XML data in the file, but is not rendered correctly by the Horizontal stylesheet.
Generating a large number of results for a single UUT with On-The-Fly reporting enabled may result in an out-of-memory error. When On-The-Fly reporting is enabled, a small amount of memory is retained for each test result until the UUT has completed testing. The magnitude of this memory leak is so small that it does not affect most test sequences, but if a test sequence generates a large number of results for a single UUT, an out-of-memory error could occur. The memory is properly released once the UUT has completed testing, so the issue is not present for tests which generate a smaller of results per UUT.
Report stylesheets cannot locate image files when stylesheet is stored on a network drive. This issue affects the ATML and XML stylesheets provided with TestStand. These stylesheets use images for elements such as the expand and collapse buttons on the report. In cases where the report stylesheet is stored on a network drive, these images are not displayed properly because the stylesheet incorrectly interprets paths beginning with \\ as being relative paths.
The Basic Step Time Report example model plugin will generate an error on machines where Microsoft Office 365 is installed. The error "Install Visual Basic for Applications and retry the operation" will occur when the Basic Step Time Report model plugin is executed on a system with Microsoft Office 365.
XML tags in XML reports may be broken in final report file when On-The-Fly reporting is enabled. When generating an XML report with On-The-Fly reporting enabled, an XML tag may be broken in the report file saved to disk. This may cause problems when attempting to parse the XML report file programmatically, or when rendering the report in a browser using an XSL stylesheet. This issue does not occur with ATML reports and does not occur with XML reports in all cases.
TestStand Deployment Utility
TestStand Deployment Utility fails when you build a Packed Project Library with source if a project with the same path is already in memory. The TestStand Deployment Utility incorrectly returns the following error: "Internal error code 1357 Processing VIs...
Could not process LabVIEW VIs. Fix any broken VIs before rebuilding." when you build a Packed Project Library and include the source files when a project with the same path is already in memory.
Deployment does not include unused packed project libraries within a library when you enable the Include All Files in LabVIEW Project option. If you create a TestStand deployment that includes a LabVIEW library and the library contains a packed project library that is not a dependency of any files included in the deployment, the TestStand Deployment Utility does not include the packed project library even if you enable the Include All Files in LabVIEW Project option on the Distributed Files tab.
The Drivers and Components dialog box incorrectly marks the TestStand Graph Control as required when you deselect the Graph Control on the Optional TestStand Features dialog box. In the TestStand Deployment Utility, the Drivers and Components dialog box incorrectly marks the TestStand Graph Control component as required when you select the Install TestStand Runtime on the Installer Options tab and you deselect the Graph Control on on the Optional TestStand Features dialog box.
Uninstalling a TestStand deployment that was installed to the same directory as another TestStand deployment will result in an error when attempting to uninstall the other TestStand deployment. When two TestStand deployments are installed to the same directory on a machine, uninstalling one of these deployments will remove files necessary to uninstall the other TestStand deployment in the directory. Attempting to uninstall the second deployment will generate an error stating that the deployment may have already been uninstalled.
TestStand Deployment Utility (64-bit) may fail to launch on Windows 8. On Windows 8 or 8.1 machines, the TestStand Deployment Utility (64-bit) may fail to launch, displaying a message stating that the application has stopped working. This issue is more likely to occur if the TestStand Deployment Utility is run with administrator permissions.

This issue is fixed by LabVIEW 2014 SP1.
The TestStand Deployment Utility may crash when deployment source files include a DLL without resources. A crash may occur when the TestStand Deployment Utility is processing source files and encounters a DLL that does not include resource files.

This issue is fixed in LabVIEW 2014 SP1.
Analysis errors on source files added to a TestStand deployment can leave the Distributed Files tab of the TestStand Deployment Utility in a bad state. When source files in a TestStand deployment are analyzed and one of the source files contains an error the analysis process will abort immediately, leaving the Distributed Files tab of the TestStand Deployment Utility in a bad state. The list of files to be included may be incomplete. Additionally, if a workspace file is included in the deployment and the analysis error occurs before the workspace is processed, the Distributed Files tab may indicate that the workspace could not be located on disk.
TestStand Deployment Utility may crash at startup on certain Windows 7 machines, especially when unusual input devices are present on the machine. In rare cases, the TestStand Deployment Utility may crash at launch, or when the user clicks on the user interface. This issue has been seen on Windows 7 machines, and is more likely to occur if the computer includes unusual input devices or unusual numbers of input devices, such as a touchscreens or multiple physical keyboards.
The "Error: -19048, Bitness Mismatch" error may occur when using 64-bit TestStand to build a patch for a deployment which does not include any user files. If the 64-bit TestStand Deployment Utility is used to create a deployment which contains installers such as the TestStand Runtime, but does not contain user files, creating a patch for that deployment will result in an error with the code -19048 and the message "Bitness Mismatch" when you attempt to build the patch deployment.
The LabVIEW 2013 Runtime will not appear in the Drivers and Components dialog on the Installer Options tab of the TestStand Deployment Utility. This issue affects both the LabVIEW 2013 and 2013 SP1 Runtimes. They will not appear in the list, even if the Runtime is installed on the machine.
TestStand Deployment Utility will report an incorrect version number in patch dependency options when baseline patch version is incremented. When creating a patch deployment, if the baseline patch version has been incremented from 1.1.0, the Depend on previous Full Deployment option will display an incorrect version number for the previous full deployment. This issue only affects the display of the label on the Mode tab of the Deployment Utility; the deployment log will display the correct version.
TestStand Deployment Utility does not install TestExec.ini to the correct directory if custom directory is set to be the installation directory. The TestExec.ini file will not be written to the expected location if the Destination of the configuration directory is set to Installation Directory when the Advanced Installer Options in the Deployment Utility are configured to use a custom configuration directory
Errors 19049 and 19017 will occur during build if an absolute path is specified for the Default Installation Base Directory option on the Installer Options tab of the TestStand Deployment Utility  
TestStand Engine
Executing a remote Sequence Call step multiple times to different remote computers will result in the Sequence Call being executed with the same remote host every time. This issue occurs when the same Sequence Call step with the Use Remote Computer execution option set is executed multiple times with different expressions for the Remote Host setting. The Sequence Call will always be executed on the remote host that was first used for execution.
The SetValIDispatch and SetValInterface TestStand API methods exhibit slower performance on TestStand 2010 and newer when they are called with an STA object in an STA thread. Calling SetValIDispatch or SetValInterface from an STA thread with an STA COM object is slower than it was in versions of TestStand before TestStand 2010.
TestStand will crash if the first step in a sequence uses the RunState.PreviousStep property in an expression which also contains the #NoValidation macro. This issue does not occur if either the RunState.PreviousStep property or the ##NoValidation macro are removed from the expression.
TestStand Sequence Editor
Visual Studio 2010 Shell generates the "Invalid license data. Reinstall is required" error when launching TestStand Sequence Editor. When launching the TestStand Sequence Editor or running the TestStand Version Selector, a Microsoft Visual Studio 2010 Shell generates an "Invalid License Data. Reinstall is required" error.
TestStand Sequence editor generates "Creating an instance of the COM component witch CLSID {B2794EF6-C0B6-11d)-939C-0020AF68E893} from the IClassFactory failed due to the following error: 80004005" upon startup. This error occurs when there is no PATH environment variable defined.
The ExpressionEdit Control gives unexpected syntax highlighting upon disabling Word Wrap. Turning off Word Wrap for an ExpressionEdit control in the properties of the control at edit time in the ADE, or by right-clicking a control in the Sequence Editor, clicking Options, and unchecking the setting, will lead to incorrect syntax highlighting. This behavior is more frequent if the first line of the expression is a comment. In some cases, the sequence editor will crash when forming expressions in the control.
Clicking a drop-down menu does not scroll the menu to the currently selected item. This issue is most apparent in drop-down menus with a large number of menu options. In this case, clicking the menu will cause the drop-down list to display items starting from the first item, rather than displaying the currently selected item in the list.
The Run VI Asynchronously step type has two separate tabs in the Step Settings pane for configuring VI call. The Step Settings pane for a Run VI Asynchronously step has two tabs, which are both titled Run VI Asynchronously. The second instance of this tab, which appears on the far right in the list of tabs, contains only a View VI button and is unnecessary as this functionality is provided in the first Run VI Asynchronously tab.
Slow performance occurs when debugging executions with many watch expressions defined. Debugging performance when single-stepping through a sequence, or resuming after a breakpoint, may be negatively affected if many watch expressions are defined in the Watch pane of the Sequence Editor.
TestStand Sequence Editor crashes when attempting to add a sequence file callback if a sequence in the sequence file has the PropFlags_NotDeletable flag set. This crash may also occur if the PropFlags_NotDeletable flag is set and a sequence file callback is removed from the sequence file.
TestStand User Interface (UI) Controls
The "Unable to load the XML Report. Expected end tag missing in report." message may return in the Report View control of a TestStand user interface when generating an ATML5 or ATML6 report with the Parallel process model. This issue occurs in limited cases and causes the report to not display in the Report View Control of the user interface. The report file saved to disk is not affected and does display properly.
.NET ActiveX controls that hold TestStand references may result in a PropertyObject leak if containing form is not explicitly disposed. In some cases, a TestStand ActiveX control will hold a reference to a TestStand PropertyObject. For example, the ExpressionEdit control will hold a SequenceContext reference if its Context property is set. Because .NET does not automatically remove dialogs from memory, if a .NET dialog containing one of these ActiveX controls is used and is not explicitly disposed, a PropertyObject warning could appear when TestStand is shutting down.
User Interfaces
Unhandled exception related to activating an invisible or disabled control may occur while running Visual Basic.NET full-featured user interface in debug mode. The exception in this instance has the -2147024809 code and will display the message "Invisible or disabled control cannot be activated". This issue occurs only with the Visual Basic.NET full-featured user interface and appears only when you run the user interface application in debug mode.

Glossary of Terms


  • Bug ID - When an issue is reported to NI, you may be given this ID or find it on ni.com.  You may also find IDs posted by NI on the discussion forums or in KnowledgeBase articles.
  • Legacy ID – An older issue ID that refers to the same issue.  You may instead find this issue ID in older known issues documents.
  • Description - A few sentences which describe the problem. The brief description given does not necessarily describe the problem in full detail.
  • Workaround - Possible ways to work around the problem.
  • Reported Version - The earliest version in which the issue was reported.
  • Resolved Version - Version in which the issue was resolved or was no longer applicable. "N/A" indicates that the issue has not been resolved.
  • Date Added - The date the issue was added to the document (not the reported date).