LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Private dll calling in Labview

Hi everyone, (refinement of my question)

I have two dlls. One contains public functions which I call from Labview. The functions in this dll call functions in the other (private) dll. However, how do I tell Labview where to find this private dll?

I have tried installing the dll in the system path directory. I have also put the dll in various different places relevant to Labview (e.g. in the directory of the Labview executable file). However, none seem to work :o(.

Is there an option in Labview where I can set paths to dlls?

Any help will be gratefully received.

Ciao,
Matthew Banham (colleague of Francois)
0 Kudos
Message 1 of 2
(2,348 Views)
> I have two dlls. One contains public functions which I call from
> Labview. The functions in this dll call functions in the other
> (private) dll. However, how do I tell Labview where to find this
> private dll?
>
....

> Is there an option in Labview where I can set paths to dlls?
>

The problem is that the system loader is what handles the dependent
DLLs. Since LV knows about the primary DLL, we try multiple locations,
the path in the dialog, next to the VI, in the LV search paths, and
finally we ask the system to look in their places. LV doesn't know
about the dependent DLL, and it is up to the system to find it. I'd
recommend trying the system or windows folder again. That should be the
right solution.

An off the wall thought that might h
elp would be to add a dependency
directly into LV by making a DLL node that calls in the the "private"
DLL. You don't actually have to call it, you can place it in a case
structure with a constant set the other way. Anyway, this will cause LV
to look for the DLL, and I think it might help if nothing else works.

Greg McKaskle
Message 2 of 2
(2,348 Views)