LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

CVI DLL calling multiple external dll's statically

All, I am pretty experienced with building CVI applications as exe's and for distribution.  I am in the process of turning one of projects into a dll so that others may use the code in their development environment.  My project makes calls to two external dll's.  I have included the type libraries and .h files for the external dll's. I have been able to compile my dll and export the necessary symbols for an end user to utilize.  I have built another CVI project to test out calls to my dll.  In the test project I've included the my newly compiled dll and and it's type library.

 

I'm observing some pretty weird behavior.  Whenever I attempt to make a call to one of the exported functions, the test project builds successfully, but it will not execute the main function.  I even inserted breakpoints throughout the main function, and the main function continues not execute.  (Test Project and DLL under test have both been built in debug  mode)

 

Has anyone ever witnessed this behavior before?

0 Kudos
Message 1 of 3
(4,108 Views)

Hi hortoxn1,

 

To be honest with you I have never seen that behavior before,but I would like to see how can I help you with this. I have been searching a bit about this but with not so much luck, this might be because we don not have that much informaiton about the conditions where the problem happens. 

 

So far, as I understood with your description, you have built a dll from your project that calls some external dlls, after building the dll you are able to make calls to thefunctions in the external dlls but not to the main sequence on the dll project.

 

If that is the case I would like to know if there is any difference between the methods that you are using to call the dlls inside the main project (the recently created dll) than what you are doing with the test project while calling the recently created project dll?

 

Have you created a dummy dll making calls to other dlls to see if it also hapens or if it is something just with your particular new dll?

 

Also I think it could be a good reference to know the versions of the envirionment that you are using just in case 

Regards,

Sil.VI
Message 2 of 3
(4,088 Views)
Thanks for your reply. I took the approach of building a simple project to call functions from the dll's my created dll had dependencies on. In doing this I discovered that one of the dependency dlls although present required licensing I was not aware of. Without the license in place, the dll is not allowed to load. Once I repaired the license issue...everything worked as normal.

Thanks again for your help.
0 Kudos
Message 3 of 3
(4,068 Views)