LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How pass parameters to a VI and thence run it in background????

Hi folks!
 
In the automation application I'm developing, I need an engine that executes a predetremined sequence of operation on a trigger, i.e. pressing a button, whitout blocking the rest of the interface and receiving/sending messages to the GUI for updating the steps done, pausing and resuming, etc.
 
I built the engine in a sub-VI and the communications are done via notifiers.
 
{main loop [GUI handling] [trigger->engine VI] }
 
From the "Design Pattern in LabVIEW" presentation, I noticed that the "daemon" pattern is well suitable for the application.
However, in the examples the daemon is launched by a method node, which do not allows passing parameters to the called VI, in order
to give the "Auto Dispose Ref" parameter to the Run method (according to the presentation, this parameter is absolutely necessary
for a correct daemon-like behaviour.
 
Does the Invoke node allow the same job? Or it is simpler to pass the arguments via a global variable? I would be very glad if the
former proposition is achievable.
 
Many thanks
0 Kudos
Message 1 of 2
(2,549 Views)
You can pass parameters to a VI that you start with the invoke node. You use the method Set Control Value [Variant] (or just Set Control Value). You specify the control name and pass it a value.
Message 2 of 2
(2,538 Views)