LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

running executables that have been compiled with different versions of a same vi

I am writing a LabVIEW 7 program on Windwos (NT 4.0 up through XP) that will have to simultaneously call and run at least two executable modules. Both of these modules will be written using some of the same utility vis from my user libraries. How can I run the two modules if they have each been compiled using different versions of the utility libraries (i.e. the two executables will have vis with the same name but with slightly different code)?
I know i could dynamically call each vi by reference node, but that can get a bit cumbersome with dozens of vis...
0 Kudos
Message 1 of 2
(2,354 Views)
Hi meludwig,

Unfortunately, LabVIEW keeps track of the different VIs in memory using the VI's name. Therefore, if you want to load multiple executables that use the same VIs but with different code, you will want to rename those VIs. LabVIEW cannot distinguish between 2 VIs with the same name but with different code. Dynamically calling the VIs using VI Server, like you mentioned, will also potentially cause problems because the executables might try to load same VI name into LabVIEW memory at a time and this will still causes problems.

My suggestion would therefore to be to rename the utility VIs to another name and save it as a custom subVI in that program. Then, make sure to include that custom subVI in the App Builder executable and you should b
e golden. 🙂

Kileen C.
NI
0 Kudos
Message 2 of 2
(2,354 Views)