LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

program searching for subvi and shared library

Solved!
Go to solution

I have a main program that needs to use subvi and shared libraries.

 

I need to copy all subvi and shared libraries to support my main program.

 

But I don't know where those subvi and shared libraries are, and where I need to paste them in order for the main program to search for those things.

 

Those two are needed:

FlexMotion32.dll

Ivdaq.dll

0 Kudos
Message 1 of 14
(243 Views)

Those sound like drivers or toolkits that need to be installed on the second PC, not just "copied over".

 

Is your main program a VI running in LabVIEW?  Or did you build it into an EXE application?

 

Please don't stick pictures in a proprietary docx format.  Attach them to your message as .png files!

0 Kudos
Message 2 of 14
(216 Views)

--

1. My main program runs in Labview.

2. Thank you for your notice, next time I will attach photos with messages as .png files.

0 Kudos
Message 3 of 14
(203 Views)

FlexMotion is a (discontinued) NI product. You need to install the runtime drivers on the computer you want to use your application on.

 

lvdaq.dll is the LabVIEW wrapper for NI DAQmx. Even if the LabVIEW application builder will add lvdaq.dll to your application build, it is only a LabVIEW specific wrapper to the DAQmx driver. You also need to install the whole NI DAQmx runtime driver onto that computer.

 

These two DLLs are simply high level shared libraries that call themselves a lot of other driver libraries which need to be installed on the computer too. Install the NI Motion driver software and the NI DAQmx driver on that computer.

 

What hardware boards are you trying to use these drivers for? Applications do not contain the drivers for hardware access. These are always separate installers (that you could add in the Installer Build settings for your LabVIEW project to create a full installer for other computers than your development machine).

Rolf Kalbermatter
Averna BV
0 Kudos
Message 4 of 14
(188 Views)

First of all, thank rolfk for your help.

 

Second, when I installed the motion control software, my FlexMotion32.dll problem was partially solved, as shown in the figure below.

 

Third, there is also a question about Ivdaq.dll. I have installed NI-DAQmx and NI-DAQ software, but the Ivdaq.dll problem cannot be solved.

The problem I encountered is :

Dynamic link library (dll) initialization routine failed

(When Labview searches and loads for the needed program)

 

Please tell me how to solve this problem and where I can obtain appropriate resources.

P.S. The hardware boards I use are PCI-7330 (motion control card) and UMI-7764 (motion controller) for stepper motor control. They work in MAX, but fail in Labview when the Ivdaq.dll is loaded.

0 Kudos
Message 5 of 14
(140 Views)

NI Motion 5.1.1 and NI-DAQ 6.9.2 and DAQmx 8.0 are VERY old software. Are you still having a Windows XP machine to install this on or rather Windows 7 or 10. While application software like LabVIEW itself very easily can run on much newer OSes than what it was designed for, this is usually not true for hardware drivers.

I'm even surprised that you would got all those drivers installed on anything newer than Windows XP without any error message.

Rolf Kalbermatter
Averna BV
0 Kudos
Message 6 of 14
(122 Views)

Dear ,

 

You're right. For those who are doing exp today, it's very old.

But my mission is to transfer these programs from XP OS (which can run) to win10 OS.

Our stepping motor can work through the MAX ,PCI-7330 and UMI-7764 on win10 OS.(It need to install the control driver)

Due to the problem of Ivdaq.dll, it cannot run in Labview, which really bothers me.

Only one step away from success.

 

Duke Tang

 

0 Kudos
Message 7 of 14
(114 Views)

Well lvdaq.dll is the interface to NI-DAQ, but for Windows 10 you really should try to install NI-DAQ 7.5, although NI seems to have pulled the download for that. There is a download for NI-DAQ 7.5 Beta on their FTP site, but according to this document it is not tested for Windows 10 but only up to Windows 8.

 

6.9.x and older predates Windows 10 more than 10 years so that is very unlikely to ever work. After you upgrade NI-DAQ to 7.4.x or 7.5 you may also have to update NI Motion to a newer version in order to make it work, since they both rely on the same low level system drivers.

 

Basically trying to make a software from 20 years ago that uses hardware drivers to run on a current OS is really going to test your patience and luck.

Rolf Kalbermatter
Averna BV
0 Kudos
Message 8 of 14
(100 Views)

Dear ,

 

First, the traditional NI DAQ 7.5 you mentioned cannot be installed on Windows 10 OS.

Second, except for Ivdaq.dll in NI DAQ, everything else can run on Windows 10(even FlexMotion32.dll can also run on Windows 10)

Third, I use Labview 7.1(version 2004) to open the program and Load Ivdaq.dll, it does not work.(due to the incompatibility between Ivdaq.dll and 64 bit operating system)

 

Duke Tang

0 Kudos
Message 9 of 14
(88 Views)

@duke840101 wrote:

Dear ,

 

First, the traditional NI DAQ 7.5 you mentioned cannot be installed on Windows 10 OS.

Well NI-DAQ 7.5 is a lot newer and officially supports Windows 7 and 8. Any earlier version of NI-DAQ is NOT made and tested to even run on Windows 7 so why do you think it should work on Windows 10? If the fact that it does not actively prevent to install is your reason that is of course ridiculous. When your NI-DAQ 6.9 was released, Windows 10 was 15 years in the future and there was no way to even guess how the installer should detect that you attempt to install it on it. This is because the version number detection in Windows is pretty confusing and the scheme has actually changed.

 

Second, except for Ivdaq.dll in NI DAQ, everything else can run on Windows 10(even FlexMotion32.dll can also run on Windows 10)

You may think that ONLY lvdaq.dll is a tiny bit of software. The reality is very different. NI-DAQ is in comparison to NI-Motion pretty much like Goliath to David. It is a huge software package with many interconnected modules that all need to work perfectly together. NI-Motion in comparison is a tiny driver that uses a few of the low level device drivers that NI-DAQ also uses. So chances that NI-Motion does install and run on newer operating systems is a lot bigger than NI-DAQ.

lvdaq.dll is a small wrapper library that helps LabVIEW interface more easily to the NI-DAQ API but it relies on the huge NI-DAQ driver for everything. On loading, it tries to initialize the NI-DAQ driver and if that fails you see the error that you get.

 

Third, I use Labview 7.1(version 2004) to open the program and Load Ivdaq.dll, it does not work.(due to the incompatibility between Ivdaq.dll and 64 bit operating system)


That's your main issue. NI-DAQ was designed and written long before Windows 64-bit was even a discussion topic.

 

In this document you can read specifically: 

Traditional NI-DAQ (Legacy) Windows 64-bit Support

64-bit versions of Windows are not supported.  These versions of Windows are only supported by the newer NI-DAQmx driver.

 

Basically Traditional NI-DAQ is NOT compatible with Windows 64-bit in any version. When the first Windows 64-bit version was available NI had already for quite some time released DAQmx and only updated this API to support 64-bit OSes. NI-DAQ was at that point already a legacy product only recommended to use if you had an existing application that was developed with it and you had to support old legacy hardware that was not supported by DAQmx anymore.

 

You have not mentioned what DAQ hardware board you are using. Depending on that you might be able to port your application to use DAQmx which will work on 64 bit Windows too.

Rolf Kalbermatter
Averna BV
0 Kudos
Message 10 of 14
(72 Views)