LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

InvokeReferenceNode and compile problem

Hi!

I have created a LV5.1.1 application that uses the
InvokeReferenceNode to call a few sub-VIs (the
reason I am doing it that way is that I can then
access that VIs property node from the calling VI
and change things like title bar etc).

Now I would like to compile my app using
ApplicationBuilder, but how do I get access to the
VIs in the compiled version? I noticed that there is
a "dynamic VIs" setting in application builder but
even if I add the VIs I can't seem to load them.
I tried

* supplying the full *source* path
* supplying the VI name only

Neither works. Instead I get an error 4001 (not
documented). I assume the issue is that in the
former case the VI is somewhere else (surprise)
and in the latter case it
is not in memory ...
anyone got this working?


Rudolf
0 Kudos
Message 1 of 2
(2,098 Views)
Hi Rudolf,

The path to VI's in a built application is defferent than in the development environment.
First, include the dymanically called VI as a "Dynamic" in the app buildler.
If the VI you want to invoke is in the same folder as the VI calling it, you can take the path of the calling VI, Strip it once, at that will give you the path to the folder where the dynamic VI is.
In the built app, you have to strip the path twice.
There are a number of ways of determining which method to use, when.
If the app is running in the dev environ., the file extension will be ".VI".
In the built it will be ".exe".
There are other methods you could use, this is just one.

I hope this helps,

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 2 of 2
(2,098 Views)