LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Call Library Funcation Node : The library specified for this node cannot be found or cannot be loaded

I called the dll through the Call Library Function Node, the system responds with the following error message. When this problem occurs, after I try to restart the computer N times, it can be used normally, but the problem will reappear as long as the computer restarts. What is the reason for this problem? (attached dll file)

 

Error Message:

The library specified for this node cannot be found or cannot be loaded. Right-click the Call Library Function node and select Configure, then choose the correct library name or path.

 

Relevant details:
    -64 bit windows 7

    -32 bit LabVIEW

0 Kudos
Message 1 of 9
(2,621 Views)

Hi fong,

 

mind to share your VI so we also know how you call that DLL, and which function you call? It also would help to get additional information on that DLL like a header file…

 

What's the bitness of that DLL?

Who created that DLL? The WinExplorer doesn't offer any reasonable details in the file specs…

Are you sure that DLL is created correctly? My LabVIEW 32bit installation claims "incorrect memory access" when trying to implement a CLFN for any function in this DLL…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 9
(2,598 Views)

Hi GerdW

 

Attached dll header and Labview example code.

 

What's the bitness of that DLL?

32bit

 

Who created that DLL? The WinExplorer doesn't offer any reasonable details in the file specs…

Vendor

 

Are you sure that DLL is created correctly? My LabVIEW 32bit installation claims "incorrect memory access" when trying to implement a CLFN for any function in this DLL…

The problem you encountered is my current problem.

The following is my current solution to this problem:
(1) Reboot the computer N times
(2) Change computers, there is a chance that some computers can be used.

 

 

0 Kudos
Message 3 of 9
(2,558 Views)

Well you have to talk with the person who created that DLL. It is indeed 32-bit, dependency viewer shows that it only depends on kernel32, w2_32 and MSCVRT. The fact that it depends on MSVCRT means that it was most likely created in Visual Studio 6. That compiler is over 25 years old, so there is a VERY good chance that this was written for Windows 2000 or even earlier and does a few things in a way that worked back then but is illegal with later Windows versions.

Personally I think you’ll have to research for an alternative method to talk with your ddvicc. This DLL is not going to work with any recent Windows version. 

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 4 of 9
(2,547 Views)

Hi roIfk

 

Thank you for your analysis. If anyone has experience in this area, please provide me with a solution. I will also try to find out if there are other methods.

 

 

0 Kudos
Message 5 of 9
(2,535 Views)

@fong_ui wrote:

Hi roIfk

 

Thank you for your analysis. If anyone has experience in this area, please provide me with a solution. I will also try to find out if there are other methods.


What solution do you expect?

 

This DLL is bad and needs to be replaced by something else. If you can't get a new version from the original creator you have to research other options. It seems to be for some network hardware as it interfaces to the Winsock interface. If the protocol for that hardware is known you could likely use the native LabVIEW TCP nodes to implement it yourself directly in LabVIEW.

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 6 of 9
(2,526 Views)

Hi roIfk

 

I have confirm that this dll is available because I have used another development platform "Microsoft Visual Studio 2012 " to confirm it in the same Microsoft OS (64 bit windows 7), this problem only occurs when using Labview to develop.

For this reason, the vendor also recommends whether we should switch to the C platform for development.

0 Kudos
Message 7 of 9
(2,517 Views)

If that works for you that sounds like a good solution. With the information you have given so far there is nothing more we could do for you here.

 

Even if this DLL "seems" to work fine in your C program, it IS attempting to do something bad during DLL initialization and that will come and hunt you sooner or later even in your C program. You can close your eyes and jump into the hole anyhow, but it will simply hurt later on.

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 8 of 9
(2,511 Views)

Hi roIfk

 

I know that this will not eradicate the problem, so I will try other methods. After all, my main development platform is LabVIEW. C is only for auxiliary use.

0 Kudos
Message 9 of 9
(2,492 Views)