LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

creating a dll

I have a request to create a DLL for a client. They will be calling the dll functions from some other programming environment. Can I create a DLL that will not require their users to install the CVI runtime?
0 Kudos
Message 1 of 7
(3,663 Views)
Hello

You can specify in the target settings for the dll to use Instrument Driver support only. In that case, you would only need to distribute instrusup.dll. Check the CVI help topic "Target Settings for DLLs" for more information about what you can and cannot link to with this option.

Hope this helps

Bilal Durrani
NI
Bilal Durrani
NI
0 Kudos
Message 2 of 7
(3,663 Views)
There is a problem currently with dlls that use DAQmx and at least one Borland compiler so you might keep this in mind.
0 Kudos
Message 3 of 7
(3,663 Views)
I guess what I need to do is not include any instrument drivers. I just want to use CVI since I am used to th environment.
0 Kudos
Message 4 of 7
(3,663 Views)
What I actually meant was that by specifying runtime support for "instrument drivers only" under the target settings, you are getting rid of the dependency on the main CVI RTE. The user will still need to have instrusup.dll, which is better than having the larger CVI RTE dll, especially if you know you will not be using any functions from it. So you wont need to distribute much.

Every compiler has some sort of runtime that it makes use of. MSVC has its C and C++ runtime libraries (which are installed by default on every Windows OS). VB had the VB runtime.

Hope this clears things.

Bilal
Bilal Durrani
NI
0 Kudos
Message 5 of 7
(3,663 Views)
Yes. Thanks. Is there a few instrument drivers that I can use then? For example, if I use instrusup.dll, will I be allowed to include Programmer's toolbox?
0 Kudos
Message 6 of 7
(3,663 Views)
You should be able to use the Programmers toolbox, since the code is statically linked to the dll. The programmers toolbox code will be embedded into your dll. If you start using the hardware driver API's then you will need to distribute the driver software along with the dll.

Bilal
Bilal Durrani
NI
0 Kudos
Message 7 of 7
(3,663 Views)