LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

How do I know the DLLs to include in a distribution?

Hi,

I've developed an application that uses an NI4351 DAQ card and a GIPIB card to control and gather data from a test fixture. The application includes facilities for processing, analyzing and viewing the data. I would like to install this application on other (office-based) PCs for convenient browsing and analysis of archived files. These PCs do not have DAQ or GPIB cards installed. My code checks for the presence of the GPIB and DAQ card, and handles their absence appropriately for PCs on which the complete NI programming and driver suite is already installed. However, I wish to avoid the overhead and inconvenience of explicitly using such NI installations for all PCs. My attempts at creating a self-contained distribution kit using LabWindows/CVI 7.0 have involved a trial and error approach of adding more DLLs to the build as their absence is flagged as an error on the attempted execution of successive installations on another PC. I have now ran out of meaningful error messages from WinXP installations (I keep getting a LWTCPJSOCKWNDYCLASS error), although Win98 currently indicates that 'the SETUPAPI.DLL file is linked to missing export NTDLL.DLL:NtClose' (which is probably already part of XP anyway). I have searched for and included GPIB and DAQ dlls, but there could be others with obscure names that I've missed. Is there a comprehensive list of DLLs that must be included for CVI distributions? The default list initially displayed by LabWindows 7.0 seems to be very much incomplete.

Thanks in advance,
John.

Message Edited by JAH on 12-21-2005 07:26 AM

0 Kudos
Message 1 of 2
(3,706 Views)
Hello, John.

The bad news is that it will be virtually impossible for you to track down all the DLLs you will need in order to install the NI-DAQ and GPIB drivers. There are way too many files, and way too many registry changes and other actions, that need to take place for these drivers to be properly installed. The only way this can be done is for you to run their standard installer, which you can download from ni.com. The CVI distribution kit did not support this functionality that you are looking for. It was intended mainly to deploy all the files and other components that are specific to your application, for which there are not already existing installers.

The good news is that with version 8.0 of CVI, the distribution kit feature was upgraded to allow for inclusion of NI drivers as part of your installer. So, if you get 8.0, you can do this pretty easily.

If you are not able to upgrade, you can look into the possibility of linking installers together, by taking advantage of the ability to run an executable as part of your installation (you set this in the Advanced Distribution Kit Options dialog). This "executable" can be another installer (*.msi) for example, or if you need to run more than one installer, you can create a batch file that serializes multiple installations, and run it instead. For more information about this strategy, select Help>>LabWindows/CVI Bookshelf. Then click on "Application Notes and White Papers" and then "Customizing Create Distribution Kit Installers...". Look for "Tip 1" in the document.

Luis
NI
0 Kudos
Message 2 of 2
(3,663 Views)