LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Call Library Function Node - does DLL registration matter?

Solved!
Go to solution

Call Library Function Node works well with both registered and non-registered DLL-s.

 

Does registration of DLL in Windows affect execution speed?

 

Thank you!

 

 

_____________________________________
www.azinterface.net - Interface-based multiple inheritance for LabVIEW OOP
0 Kudos
Message 1 of 2
(2,107 Views)
Solution
Accepted by topic author _Y_

The Call Library Node only links to exported APIs in a DLL and makes no use whatsoever of anything that would require a DLL to be registered. There is also no way of registering traditional DLLs that I'm aware of.

 

DLL Registration is necessary for DLLs that implement COM interfaces. The registration specifies what COM interfaces it implements, what ClassID it supports and under what COM registered name the classes can be invoked. This is independent of the dynamic calling interface used by the Call Library Node. DLLs can contain both exported API functions as well as COM object class factory interfaces but they are completely independent of each other (but might internally call into the same functionality or one of them might call the other depending how they are implemented). Most DLLs that implement COM interfaces are really ActiveX servers and to interface to this functionality from within LabVIEW you would use the ActiveX functionality in LabVIEW. However ActiveX is not the same as COM. COM is rather the mechanisme used in ActiveX for the runtime invocation of object classes but adds extra functionality to the ActiveX interfaces to discover the type interface of such objects at runtime for applications like LabVIEW.

 

The fact that a DLL contains a COM object implementation that needs to be registered should not have a considerable effect on the runtime performance of the dynamic invocation of exported functions (but that all can depend of course on how a DLL containing both these interfaces has implemented them internally). 

Rolf Kalbermatter
My Blog
Message 2 of 2
(2,040 Views)