NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Error -17600 when switching from LabVIEW Development System to LabVIEW Run-Time Engine in Adapter Configuration

I receive an error message (code -17600) while loading my test sequence after switching from LabVIEW Development System (2009 f3) to LabVIEW Run-TIme Engine using the Adapter Configuration.

 

ErrorCode: -17600,

Failed to load a required step's associated module.

LabVIEW Run-Time Engine version 9.0.1f3.

 

When I switch back to the LV development system, everything is OK, and the sequence loads and runs perfectly.

 

My TestStand Engine Version is 2012 f1 (5.0.0.262).

 

I'd appreciate any help on this issue.

Roman

0 Kudos
Message 1 of 5
(7,314 Views)

Hi roman_beacon,

 

The behavior you've mentioned occurs because the VI you are calling is not loadable in the LabVIEW Runtime Engine. The most likely cause is that there are at least a few VIs in your VI hierarchy that are not saved in the exact version of the LabVIEW Runtime you are trying to use (9.0.1f3).

 

To fix this, masscompile (compiling and saving all the VIs in the current version) all the VIs in your hierarchy in the LabVIEW development system whose version and bitness (32 or 64-bit) matches the Runtime version you would like to use. In your case, it should be LV 2009 f3.

 

To mass compile, go to Tools->Adavanced->MassCompile in LabVIEW and specify the folder where all of your VIs reside.

 

You might also be calling some VIs from vi.lib in LabVIEW or other locations and you need to make sure that even these are saved in the right LabVIEW version (they should not have a doc-mod when the VI is opened in the coressponding LabVIEW development system).

 

Let me know if the problem persists.

0 Kudos
Message 2 of 5
(7,287 Views)

Thank you!

I tried to masscompile the whole library that consists all my vi's and llb's, but the problem still persists...

0 Kudos
Message 3 of 5
(7,247 Views)

Hi Roman,

There are a couple of things you can try:

1) Determine if the LabVIEW RunTime Engine is corrupted in some way. Create a new simple VI with no sub-VIs, using the same LabVIEW Development system you used for mass-compiling the VIs. Create a TestStand step that calls this VI and ensure it runs correctly. Now switch your LabVIEW adapter to use the RuntimeEngine and choose the "Auto detect using VI version" option.
Check if the simple VI is loadable and runs without errors in TestStand.
If the step generates the same error, you should try a re-install of the LabVIEW development system.


If not, its most likely that there is some VI you are using that is not loadable in the LabVIEW Runtime Engine because:


1) Some sub-VI is still not saved in the right version or bitness. Open the VI heirarchy of the top-level VI that you are calling from TestStand and examine the paths of all the sub-VIs to check if they were in the folder you masscompiled and re-save any that are outside this directory.
Also, when you try to close the top level VI, do you get a prompt to save any unsaved files? If so, they could be the sub-VIs that are not saved in the right version. Save all of them.
Check if you are loading any VIs programatically and if these are compiled and saved in the right version as well.

2) There is some feature you are using in your LabVIEW code that is not supported in the LabVIEW RunTime Engine. To check this, add your top-level VI to a LabVIEW project and create a new build specification and create a new executable from this VI.

  •     Right-click "Build Specifications" and choose "New->Application(EXE)".
  •     In the Application Properties window, select Source Files and choose the top level VI as the start-up VI.
  •     Save the properties.
  •     Right-click on the newly created build specification and choose Build.

Run this executable (it will be run using the LabVIEW RunTime) and check if the VI has a broken arrow indicating that it cannot be loaded and run in the LabVIEW Runtime Engine.
You might need to examine your code and find the feature which is not supported in the LabVIEW RunTime and find an alternative.

Another thing i forgot to mention the last time around is if you are using 64-bit LabVIEW with 32-bit TestStand, then executing code using LabVIEW RTE from TestStand will not work since the 64-bit LabVIEW RTE dll cannot be loaded by the 32-bit TestStand process.

If none of the above steps resolve the issue, consider sharing your LabVIEW code so i can take a look.

Regards,
TRJ

0 Kudos
Message 4 of 5
(7,236 Views)

I had the same problem, my solution is very simple:

My system configuration: NI Developer Suite 2014 DS2 on Windows 7 x86

For a new Windows user who can perform the test sequences only in the LabVIEW Run-Time Environment (Base license), it is not possible to use VI's that "separate Compiled Code of source files" option is enabled. On the NI website there are appropriate instructions.
TestStand generates loading Modules following error message:

"Error Code: -17600, Failed to load a required step's associated modules."

The solution is that the user profile is a text file must be created. Maybe that file exists in another profile, which can then be copied from there.

It must be applied:
  
in the folder: %userprofile%\Documents\LabVIEW Data\VIObjCache\14.0.0r0\
  
the file: lvDistPath.txt

with the following content:
=====================================================================
C:\Program Files\National Instruments\LabVIEW 2014
=====================================================================

This file is also available for new users, this file must be created for the default user in:

C:\Users\Default\Documents\LabVIEW Data\VIObjCache\14.0.0r0\

 

Message 5 of 5
(6,394 Views)