LabVIEW.LIB Error When Calling a LabVIEW DLL Built with VIs That Use External Code

Updated Aug 17, 2018

Reported In

Software

  • LabVIEW

Issue Details

I receive the following error when I call a DLL (dynamic link library) that I built with LabVIEW:
 
Why am I getting this error?

 

Solution

The CINTOOLS that come with LabVIEW are version-specific. If you compiled a DLL for use with an older version of LabVIEW using the CINTOOLS for that version, you will likely receive errors when attempting to use that DLL/CIN with later versions of LabVIEW. In order to use the DLL/CIN in the current version, you should relink the DLL with the LABVIEW.LIB for the current version. You will have to recompile the DLL/CIN with the new CINTOOLS. 

If you call an old DLL or CIN in a VI compiled as a LabVIEW DLL, you receive the aforementioned error and the application terminates. This is because the old LABVIEW.LIB does not know how to correctly locate the LabVIEW Run-Time Engine. This error may also occur if you include older versions of VIs that ship with LabVIEW in your LabVIEW DLL. You should mass compile those VIs to update them to the current version of LabVIEW prior to including them in your LabVIEW executables or DLLs (see the related entry below).