02-01-2013 04:39 AM
Hi
I’m having an issue with Labview runtime.
On my development PC I have: W7 Pro 64 bit + Labview 12.0f3 32 bit
On my Target PC I have: W7 Pro 64 bit + Labview runtime engine 32 bit (lVRTE2012f3std.exe)
When I copy a .VI to my target PC I can’t open it. I got the attached message.
Any suggestions?
02-01-2013 04:46 AM
Pern
Copying a VI does not allow you to run the program in System where LabVIEW runtime engine is installed.
You will need to build an Executable and put that executable on system where Run-Time engine is installed.
Search for the "How to build executable in LabVIEW " for learning.
02-01-2013 06:04 AM
I don’t believe!
How do you then use “call by reference node”?
In labview 6.1 it worked perfectly.
02-01-2013 06:29 AM
Better believe it!
In order to run a vi you must have the development system on the machine. And only the Professional Development System allows you to make an exe-file that runs with the run-time engine only.
Cheers
Edgar
02-01-2013 06:42 AM - edited 02-01-2013 06:43 AM
Then it has changed since labview 6.1 ?
If I put a Vi made in labview 6.1 on a machine without labview installed. (only labview runtime)
It was possible to open the VI and run it.
But of course it was not possible to change the code or see the diagram.
When has this changed? (if it has 🙂 ) Is there any documentation on this changes?
It completely destroy my way of using Labview.
I use to call a VI with “call by reference” and it was possible to see and open the front panel. And then run it with the “arrow”.
02-01-2013 09:22 AM
You could never simply install a VI and the runtime.
If you were using the Call By Reference, then you had it inside a VI you built into an exe.
02-01-2013 10:46 AM
@pern wrote:
Then it has changed since labview 6.1 ?
If I put a Vi made in labview 6.1 on a machine without labview installed. (only labview runtime)
It was possible to open the VI and run it.
But of course it was not possible to change the code or see the diagram.
When has this changed? (if it has 🙂 ) Is there any documentation on this changes?
It completely destroy my way of using Labview.
I use to call a VI with “call by reference” and it was possible to see and open the front panel. And then run it with the “arrow”.
I think I read in another post that very old versions of LabVIEW "executables" were really just renamed llb files, or something to that effect, so yes, they have changed.
02-01-2013 04:24 PM
@Dennis_Knutson wrote:
You could never simply install a VI and the runtime.
If you were using the Call By Reference, then you had it inside a VI you built into an exe.
Dennis is correct.
02-02-2013 11:48 AM
I don't know if older runtimes were capable of independently loading and running VIs (although, unlike the others, I do have a vague recollection of hearing or seeing something like that), but just to clarify Dennis' reply, here's what you need to do:
Write a very small program. All it needs to do is use the Application class property Command Line Arguments to get the path of the VI and then open a reference to that VI and use the CBR node or the Run VI method to run the VI.
Build that application into an EXE (I think you need to explicitly enable command line arguments in the build spec) and then register the VI extension to activate your EXE (manually or through the Windows registry). I never did this, but you might need to set the Open verb to pass the path of the file to your application.
02-02-2013 06:22 PM
It seems that now (LV2012) executables are still packed libraries of VIs (they are compiled files, you know): you can access test.vi, included into executable by writing aaa.exe/subVIs/test.vi. Here subVIs folder is the path to the test.vi relative to the main VI of the executable.
To run a vi file you should somehow tell the system to run it: when you double click the vi, Windows does not know that it should start it, but not call an associated program. I think that exe contains the mentioned code that uses runVI method for the VI, marked as startup. Or the instruction for the system to run this VI, that is the same.
To run another VI, you need to use run VI method manually on it (as tst has offered). This VI can be located anywhere - in packed LabVIEW built exe, folder, network.