NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW Runtime vi search path when called from TestStand

I'm trying to deploy TestStand sequences to many test stations. On my dev machine everything works fine. My system consists of an exe for the TestStand UI, a couple of PPL's for the guts of the application, and of course the run time engines for both TestStand and LabVIEW. I've tested the PPL's, UI, and .seq on the dev machine and all works fine. When I deploy to my test station computer, I get errors that vi's are broken or are unable to load required files. 

 

Some remote debug shows that the files not loading are DLL's that are called from the PPL's. In the PPL creation, the DLL is located in the same directory as the PPL. If I drop my TestStand UI exe into the same folder as one of the PPL's, everything from that PPL loads fine (including the DLL). Search paths include the Top Level vi directory, so this makes sense. However, it still won't load the other DLL, referenced in a different directory by the other PPL. The PPL's are loaded with an absolute path, but the DLL's are relative from within vi's inside the PPL. 

 

I tried adding the parent directory to the TestStand search paths (I created a new TestStand deployment with the Cfg files, then installed it on the deployment machine). Same issue. 

 

Is this an issue with LabVIEW Runtime search paths? 

 

How do I ensure these directories are part of the search paths for TestStand and LabVIEW Runtime? 

0 Kudos
Message 1 of 6
(3,208 Views)

I went back through the TestStand search directories options and added "search sub dirs". I recreated the install image and installed it on the deployment machine. No dice. I confirmed the change by looking at the SearchDirectories.cfg file. The parent folder is listed and the option to search sub dirs is true. 

 

What am I missing to tell TestStand and LabVIEW runtime to search in these folders?

 

image.png

0 Kudos
Message 2 of 6
(3,194 Views)

Hi wrkcrw00, 

 

What version of LabVIEW and TestStand are you using? 

 

Have you taken a look at this document? 

 

Why are my VIs Broken after Building a Deployment with the TestStand Deployment Utility?

http://digital.ni.com/public.nsf/allkb/FB2E568C3DCCB87E8625781E007EE41E?OpenDocument 

 

Could you also attach a screenshot of the error that you are getting? 

 

Thanks!

0 Kudos
Message 3 of 6
(3,180 Views)

LabVIEW 2017

TestStand 2016

 

I've not seen that doc before, but I don't think it applies. My VI's are not broken in LV. It's definitely a search path issue. If I put all of my PPL's and DLL's in the same folder as my exe, everything works as desired. It's only when things are in different folders that things don't work.

 

I will PM the screen shot.

0 Kudos
Message 4 of 6
(3,175 Views)

@wrkcrw00 wrote:

If I put all of my PPL's and DLL's in the same folder as my exe, everything works as desired. It's only when things are in different folders that things don't work.


Especially if they call each other, your PPLs and DLLs need to retain their relative paths from when you built them.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 5 of 6
(3,169 Views)

When I built the PPL, the DLL was in the same directory. Just for fun, I created a stand alone LV executable for the express purpose to open the PPL and verify I could run it. The exe works just fine - the PPL is called and it finds the DLL in the same directory as the PPL. Now, from TestStand, if I run my UI exe that runs a .seq that calls the PPL, it finds the PPL (absolute path) but can't find the DLL. If I drag the DLL into the same directory as the UI exe, but leave the PPL in it's proper place, it will open the PPL and find the DLL and all work. 

0 Kudos
Message 6 of 6
(3,161 Views)