From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

call library path

Hi all,

 

I have a question regarding calling dlls.

 

Usually when I call a dll I have to write the hole path of it inside the dll properties. However in the drivers on my data acqusition card I have found that the path of the dll is incomplete and only shows the name of the dll (as shown in the picture  attached). I have no idea where that dll is since it doesn't show the path and I have looked for in in windows and I can't find it.

 

I would like to know why the call library vi doesn't need the path in some cases and if possible any recomendation to find it.

 

thanks

 

Juanlu

0 Kudos
Message 1 of 4
(2,312 Views)

@kerek123 wrote:

 

 

I would like to know why the call library vi doesn't need the path in some cases and if possible any recomendation to find it.

 


It doesn't need the full path because the dll is registered in Windows (Windows knows where the dlls is).

 

I remember reading a very interesting discussion on the forums about the performance difference you'd get if you specify the full path in the CLFN properties or just the dll name or if you pass the dll path to the CLFN as an input on the diagram.

I can't find this discussion now, maybe someone kept the link Smiley Surprised

 

(CLFN : Call Library Function Node)


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

Message 2 of 4
(2,309 Views)

Found it : http://forums.ni.com/t5/LabVIEW/Dr-Damien-s-Development-Call-Library-Function-Node-Calling/td-p/1117...


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Kudos
Message 3 of 4
(2,307 Views)

Basically LabVIEW will check on load of the VI if the library path is an absolute path or not. If it is, it attempts to load the library from that path. If it is only a file name or the load from the absolute path fails, it instructs Windows to find the DLL, with the name only. If that also fails you get a broken arrow and the failure that the DLL could not be loaded or found.

Rolf Kalbermatter
My Blog
0 Kudos
Message 4 of 4
(2,294 Views)