LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How can I build an application that calls functions in a dll if the associated hardware is not present?

I am trying to build an application that use the "Call Library Function" node to call functions in a dll.
The dll was provided by a third-party and includes functions to drive an I2C communication board.
The problem I have is that the dll does not not properly because the hardware is not present.
Therefore when I load the VI a broken arrow is displayed and when I am not able to build the application.
I will not be running the application on the PC where I build the application, therefore I want to be able to build the application on a remote PC that has not all the hardware installed. Once the application will be build it will be installed on the target PC that has all the hardware.
 
How can I make the application builder to build the application event if the dll is not properly loaded? (the dll will be properly loaded on the target PC)
I want to do this on LabView 5.1.1, any ideas?
0 Kudos
Message 1 of 4
(3,045 Views)
You're going to have to either install the driver on your development machine or you can probably just drop the needed .dll file in the 'Windows\System32' directory on your development machine. This way you'll be able to open the VI without a broken arrow.
 
Ed


Ed Dickens - Certified LabVIEW Architect
Lockheed Martin Space
Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.
0 Kudos
Message 2 of 4
(3,037 Views)
I already have the dll installed, the problem seems to be that the dll is not properly loaded (I got a error message: "NO DRIVER HERE OR NO BOARD" when I the VI loads),
The reason for that is probably because the dll is trying to attach the the driver and since there is no hardware for the driver, the OS did not load the driver (.sys) at startup.
 
0 Kudos
Message 3 of 4
(3,035 Views)

Some .dlls don't try to attach to the driver when loaded.

I've worked with both and unfortuately, I've not figured out a way around this problem.

You could possibly use the Conditional Disable structure around the dll calls so they would not be loaded unless you're in the runtime engine. But i've not tried this so I don't know for sure if it's possible.

Anyone??

Ed



Ed Dickens - Certified LabVIEW Architect
Lockheed Martin Space
Using the Abort button to stop your VI is like using a tree to stop your car. It works, but there may be consequences.
0 Kudos
Message 4 of 4
(3,030 Views)