Showing results for 
Search instead for 
Did you mean: 

How to build demo versions with Labview ?


is it possible to design Labview applications in a kind,
that it is possible to generate "demo versions" of it ? Demo version in the means of feature-limited crippled versions of a full instrumentation software, where SOME hardware access is denied, but you can load and view and analyse data.

Of course it might be useful to compile this demo version with the Labview Application Builder,

What might be the business modell for demo versions:
A hardware manufacturer creates a Labview application which controls the manufacturer's components, and allows instrumentation and data recording. The application is not free but sold for extra money.

As pre-sales benifit, the manufacturer would like to send the (compiled) Labview application to future customers.

Now the problem is, that the customer has not (all) the external devices or PCI/USB devices,
on the other hand the hardware manufacturer does not want to give the "full application" as gilft to the customers.

Now with traditional software development with C++, Java, C#,
either a demo version is gained from the full version by replacing some module with hardware access by modules wth "empty" function body or with function body which return constant values instead of accessing the hardware.

In the world of process industry, usual process control systems may supply "alternative" values if the original device is not available.

What kind of software structure must I build with Labview, to do the same ?

Now the problem with Labview applications is

Labview applications depend on drivers. Drivers depend on hardware.

So if the FULL commercial version of the Labview program accesses a DAQmx driver, GPIB driver or any other hardware driver by a VI,
and often this means that a special manufacturer VI is used in the Labview program which does the actual hardware access,

how to modify the software to make a demo version
a) so that IF the customer buys the hardware and gets the hardware driver, he still does not have the full version
b) so if the customer neither has the hardware nor the driver, he still can run the Labview software and load an view data, push buttons, can execute menu items even can manipulate data ect, can use the manufacturer's VI

Unfortunately, it is no solution just to delete "some" of the VIs with hardware access from the distribution of the demo version, as this just causes error messages during the loading of the (compiled) Labview demo application.

Message Edited by hemmerling on 01-11-2007 12:35 AM

Message Edited by hemmerling on 01-11-2007 12:37 AM

0 Kudos
Message 1 of 6
The conditional diagram disable structure?

I haven't used it meaningfull in an exe or so but I think it should be exactly what you need.

Free Code Capture Tool! Version 2.1.3 with comments, web-upload, back-save and snippets!
Nederlandse LabVIEW user groep
My LabVIEW Ideas

LabVIEW, programming like it should be!
0 Kudos
Message 2 of 6

Thanks alot.

Conditional Disable and Diagram Disable Structures

are indeed at least a part of what I wanted.

Anyhow, as such "suspended" VIs are often the *source* of signals,
so there must be an addtional method how to provide "alternative" signals for the demo version,
which does not make the administration / further development the full version  too complicated...

For example: The VI for an external signal generator device is disabled, but alternatively it would be nice if the users of the demo version can get a fixed sinus signal instead...
How to do that with Labview and the "Conditional Disable and Diagram Disable Struktures",

and can I test this all even without Labview Application Builder, in the full development system ( so that I don´t need the compiler for frequent checking ) ?

Btw, with what version was this "Conditional Disable and Diagramm Disable" feature introduced ? Is ist already available with Labview 7.0, /.1 ?


0 Kudos
Message 3 of 6
Sorry, in lv7 only the constant disable structure is available for FPGA, maybe dynamically calling VI's might be something.
Use a name structur like:

Free Code Capture Tool! Version 2.1.3 with comments, web-upload, back-save and snippets!
Nederlandse LabVIEW user groep
My LabVIEW Ideas

LabVIEW, programming like it should be!
0 Kudos
Message 4 of 6
And with Labview 8 / 8.10 / 8.20 and the corresponding Labview Application Builder,

Conditional Disable and Diagram Disable Structures

now is
available for the general Windows target ( = exe files) ???????????????????
So a new feature of Labview 8 ?

Hmm how to call VIs dynamically ?
With my experience of Labview, all the Labview applications are static = I get in the application what I put on my (Labview) desk.

Message Edited by hemmerling on 01-11-2007 05:42 AM

Message Edited by hemmerling on 01-11-2007 05:46 AM

0 Kudos
Message 5 of 6
I got a demo version, a compiled Labview 7.1 program, and when starting, the Labview 7.1 Runtime
looks for a DDL
but doen't find it,
and complains about that the VIs
are missing.

Then the application starts, with the menu screen,
but starting the action in the activation by clicking on a "run" menu item,
this causes the error messages
"Missing subVI FP in VI Test
Missing subvi FP Create in VI Test"
( Initialiisierung [german] = Initialisation )
So is this a goo or bad example of a "demo made with Labview" ?
Maybe the FPxx stuff for a Fieldpoint device.

Any comment on that ?

0 Kudos
Message 6 of 6