LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Why Compiled DLL on CVI 7.0 doesn't work on CVI 8.01

I have a problem with a DLL that I wrote, I have compiled the DLL in CVI 7.0 but when I try to use it on a machine with CVI 8.01 it Doesn't work.
I have verified that all the resources and functionality that I use are present on the machine under CVI 8.01.
 
Question: Doesn't CVI have backwards compatibility for Compiled DLL's?
 
Thanks.
0 Kudos
Message 1 of 5
(3,690 Views)
Hi skykeeper,

The CVI Run-Time Engine is fully backwards compatible and so using your 7.1 built DLL on a  machine with version 8.0.1 of the CVI RTE should work.  Could you elaborate on the it doesn't work statement?

What type of errors do you get?
Does the application that calls your DLL not load?
Is your application statically linking or dynamically linking to that DLL?
Is there a specific function that doesn't work?

Thanks
Jonathan N.
National Instruments
0 Kudos
Message 2 of 5
(3,686 Views)
The Application calling the DLL loads and runs fine, is just when it tries to execute a call to my DLL that I get an error.
 
The function call I use in the DLL that is returning the error is : dBHandle = DBConnect(dBconnectionStr); //Make Conection with Oracle Database
Unfortunatelly the error code returned by the DLL is a generic one. -10, not in the sql toolkit error list.
 
 
0 Kudos
Message 3 of 5
(3,684 Views)
Hi skykeeper,

Error -10 means that the error was detected by ADO. You can call DBNativeError function to get the underlying error code. Check out the
Why Do I Get "Native error code message When I Call A LabWindows/CVI SQL Toolkit Function In My Program? KnowledgeBase that talks a little more about this.

Once we find out more information about the error, we can find what the problem stems from.

Just a couple of side note questions:

- Is this the same computer that you said originally worked (i.e. this means this computer at one point had CVI 7.0 RTE installed?)
- Are you seeing this issue on multiple computers?
- Are you communicating to the same exact database?

Best Regards,
Jonathan N.
National Instruments
0 Kudos
Message 4 of 5
(3,679 Views)

Yes, the database and connection string was the same on both machines.

The DLL was compiled on our Lab machine wich has CVI 7.0, the error comes from a production machine wich is CVI 8.01.

The DLL never worked on the CVI 8.01 machine until I recompiled the DLL on that machine using CVI 8.01.

Then I deployed to other 4 production machines with CVI 8.01 and had no problems.

0 Kudos
Message 5 of 5
(3,677 Views)