LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

passing parameters betweeen LV versions

Does anyone know how to pass parameters between LV versions? For a reason too complicated to get into, I have to run one program in LV 2009 (32-bit) and the other in LV 2009 (64-bit). Is there any way to pass parameters (strings, etc.) between the two programs? The only thing I can think of is turning the programs into executables. Any other ideas? Thanks in advance for any help you can give me.
0 Kudos
Message 1 of 9
(3,215 Views)

Hi Dan,

 

how will making executables help to pass parameters between VIs? Shouldn't you be using something like files to pass them?

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 9
(3,201 Views)

Hi DanX!

Are the two programs supposed to run on the same machine? (if yes, at least one of them has to be an executable, since, as far as I know, you can't run two version of Labview at the same time)

In any case, data can be exchanged between them via Datasocket, TCP/IP, UDP, Shared Variables, files....

 

Marco

 

Message 3 of 9
(3,190 Views)

Hi Marco,

 

I often run two (or even more) LV versions at the same time - it works, but you have to be careful Smiley Wink

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
Message 4 of 9
(3,186 Views)

You can run two different versions of LV on a single computer at the same time.

 

I can talk directly within one version of LV between programs using "open vi reference" and "invoke node" to get and set parameters, controls, etc. I need to do this between two versions of LV. I thought of a way to do this indirectly by reading/writing from text files, etc. but I was wondering if there was a direct way. Doing this with executables may amount to the same thing. But I was fishing for a better method (i.e., more direct passing)...  

0 Kudos
Message 5 of 9
(3,171 Views)

Datasocket, TCP/IP, UDP or Shared Variables aren't ok?

Moreover they are faster then using files...

Message 6 of 9
(3,162 Views)

MarcoMauri wrote:

Datasocket, TCP/IP, UDP or Shared Variables aren't ok?

Moreover they are faster then using files...


 

I have to side with Marco on this suggestion.

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 7 of 9
(3,153 Views)
I only have limited experience with shared variables, datasockets, etc. I knew there was probably an easy solution. I will check it out the examples. Thanks.
0 Kudos
Message 8 of 9
(3,144 Views)
Network shared variables would probably be the easiest way to go, followed by datasockets.  However, neither offer a good way to synchronize the data, so you can create race conditions if you are not very careful.  It this is a problem, use TCP/IP.  For raw speed, UDP is probably your best bet, and can be made synchronous.  All are network protocols, so will work on multiple machines as well as a single machine.
0 Kudos
Message 9 of 9
(3,123 Views)