04-21-2009 04:22 PM
Hi All,
I'm having a problem with a EXE that i've built. I've made a very simple VI to track down the problem, but with no sucess. I've got a set of PCI cards. I've got a top level dll that i make calls to in LV8.5 and there are a bunch of lower level dll's that i think this top level dll uses (recursive ??).
Anyway, i build a vi that uses the call library function node to initalise the PCI cards. This doesn't require anything to be passed to the dll and works a treat in LV. I then built an EXE. The first time through LV had a fit because i hadn't included the lower level dll's and it started objecting with various error messages. I then included these dll's in the build and hey presto got an exe without any warnings. When i run the EXE i don't get any errors or warnings (which is great), but actually i don't get anything - the PCI cards don't initalise (which is not so great). I know this because you can hear a bunch of relays turning on and off when the PCI cards are initalised.
As i said works fine as a vi but doesn't once it's built as an EXE.
Any pointers?
Dr Phil.
Solved! Go to Solution.
04-21-2009 08:22 PM
Are you monitoring the error output of CALL LIBRARY?
If not, you should.
How are you specifying the path to the DLL in the CALL LIBRARY function?
Is it a relative path or an absolute path, or just a DLL name?
Blog for (mostly LabVIEW) programmers: Tips And Tricks
04-23-2009 07:22 AM
Hi Steve,
You put me on the right track. When looking at the errors it was returning error 1097. I then looked at how the exe was being told where the exe was and fed in a control with the dll location into the CLF. Once i did this it all worked.
Thanks!
Dr Phil