LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to handle missing NIDAQ in built application?

Hello everybody. I wrote an application for measurement. It is distributes as an installer with included LV Runtime and Visa Runtime. It also needs NIDAQmx but because its size I do not include it to the installer but inform the user to install it if it isn't yet. Because I put a lot of effort to have nice and smart error handling I also tried what happens if I run my application without having NIDAQmx installed. And what happens is not really nice as you can see from the pictures. And it's not even all the errors. 

What I would like to achieve is to have just one error being displayed that nidaq is missing - similar to when runtime is missing. Is it possible to set this in the config file? Otherwise I don't know how I could handle this from within my application because those errors appears before it starts.

Thanks a lot

LV 2011, Win7
Download All
0 Kudos
Message 1 of 7
(2,822 Views)

I like to run my applications from a splash screen launcher vi, where the main code is called dynamically.  Here you might be able to verify if daqMX is installed prior to the DAQmx vis being loaded (as in the static launch condition).  I have not tried this for your particular case though.  As for determining if all dlls and support software is present, you could look at registry keys of search for specific dlls at known locations.  I am not sure what trace Max and DAQmx leave behind when installed.

 

Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
0 Kudos
Message 2 of 7
(2,798 Views)

Good question.  I like falkpl's suggestion of having a sort of wrapper VI that would first check for DAQmx.  You could also just perform this check then go into a case structure with the rest of your code (maybe your main VI as a subVI to this wrapper).

 

As for the check, I think checking the registry is the most robust and reliable method.

 

 

Message Edited by Brian_A on 09-05-2008 01:21 PM
Brian A.
National Instruments
Applications Engineer
0 Kudos
Message 3 of 7
(2,778 Views)
Good to know the registry strings.  Let me know how this works.  I would consider doing this on all my applications.  Make a generic wrapper (Splashscreen or just Launcher) check for all resources, Is Daqmx installed?,  Are required devices found?  Are all liscences active ... Handle the prerequisits and then launch your app if all prereqs ate satisfied, else give the user an informative message on how to fix the issue.  One other thought on the topic, Installers help by bundeling the software drivers and resources in one single setup.exe, although they are a little tricky to make.
Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA
0 Kudos
Message 4 of 7
(2,763 Views)
OK guys thanks for the advices. I'll play with it a bit tonight and will let you know the result. I indeed appreciate your advices. Thx!
LV 2011, Win7
0 Kudos
Message 5 of 7
(2,757 Views)

Hello everybody. Here is my result. To be honest one of the best features I learned! Comparable to mastering Event Structure years ago and understanding Queue State Machine concept.

Run Splash_SplashScreen.vi. If you have some comments let me know. Thx

 

splashscreen

Message Edited by ceties on 09-07-2008 03:06 AM
Message Edited by ceties on 09-07-2008 03:13 AM
LV 2011, Win7
Download All
0 Kudos
Message 6 of 7
(2,746 Views)
I just left too long time to display the splash screen...this one is corrected
LV 2011, Win7
0 Kudos
Message 7 of 7
(2,736 Views)