Error Loading LabVIEW VI with the TestStand Run-Time Engine Adapter

Updated Aug 6, 2018

Reported In

Software

  • TestStand

Issue Details

When I use the LabVIEW Run-Time Engine adapter in TestStand, I see the following error:

Unable to load VI <VI_name> with the LabVIEW Run-Time Engine version <LabVIEW Version>. The version of the subVI might not match the version of the run-time engine or a VI dependency might be missing.


If I attempt to run this sequence file, I see errors, -18002 or -17600 with the message "Failed to load a required step's associated module" during Run-Time.

Solution

The LabVIEW Run-Time Engine does not have all of the capabilities of the LabVIEW Development environment. Here are a few reasons why this error can come up:
  1. The VI called by the step contains a subVI that is saved in a different version of LabVIEW than the top-level VI. Mass compiling your VI's directory or the VI itself may take care of this problem. Mass compiling the top-level VI can save all of the subVIs in the same version of LabVIEW. For more information, see the KnowledgeBase article What is Mass Compile in LabVIEW?
     
  2. There is a dependency that the LabVIEW Run-Time engine cannot find. Ensure that all dependencies for any VIs can be found by the engine by trying these different steps:
  3. If the bitness of the LabVIEW Run-Time engine does not match the bitness of TestStand, then this error will occur. If this is a requirement, refer to Using 64-bit TestStand to Execute 32-bit LabVIEW VIs.
  4. There could be a naming conflict due to LabVIEW Application instances. For more information on this error, please see the section labeled "Errors Related to Naming Conflicts" in the article, How TestStand Interacts with LabVIEW Application Instances. The method for fixing this error will differ based on the use case, for instance:
    • If you do not intend to share VI instances between the sequence and the user interface, follow these steps:
      1. In the Build Specifications of your Operator Interface, with the Dependencies item selected, check the Apply prefix to all selected items option in the Source File settings tab of the Build Specifications Window.
      2. Specify a prefix to use.  This will ensure that the user interface and the sequence do not conflict. 
    • If you do intend to share memory, you can prevent this error by deselecting the Modify project library file after removing unused members option in the Additional Exclusions tab of the Build Specifications Window.  Note that this change can lead to larger executables due to the inclusion of unnecessary VIs.

Additional Information

If none of these steps resolve your error, consider the following options:
  1. Narrow down the source of the error by eliminating subVIs until the error goes away. You can use diagram disable structures to incrementally disable subVIs until you find the source of the error.  
     
  2. Build a Source Distribution or a Packed Project Library to ensure that all dependencies are linked properly and that the code is compiled in the same version. Building a TestStand Deployment will accomplish this.

WAS THIS ARTICLE HELPFUL?

Not Helpful