External DLL not working when deployed

Hi, so I'm using Matlab R2009b, and i developed a C dll that is called TalkSerial.dll when running in matlab, it works flawlessy, but when i deploy it, it gives an error that it cant find the TalkSerial_proto.m, so I used the loadlibrary with mfilename to create the TalkSerial_proto and added it to the deploy project, it worked, but now it gives another error, that says The specified module could not be found... any ideas?

 Accepted Answer

Bruno
Bruno on 28 Feb 2012
It worked, def file was fine... it was just a driver I forgot to install... (dumb, DUMB me!!!).....

More Answers (2)

Most likely, the DLL you are attempting to load, or one of it's dependencies were not found on the deployed machine. I would recommend getting Dependency Walker, and run your deployed executable with it to profile missing dependencies.

1 Comment

It helped, turns out it was missing the VC 2005 Redist package, (it had only the 2008 installed, I thought it would be ok since i build it with VC8 compiler) but it still points an error to MPR.dll although this dll can be found in Windows\System32, I was thinking, I developed the DLL using the external def file instead of the declspec method, could this be the problem? even when it works fine with matlab installed machines?

Sign in to comment.

MPR is not the problem. That often shows up as missing with no fatal effects. Have you tried everything in the FAQ: http://matlab.wikia.com/wiki/FAQ#My_standalone_executable_won.27t_run_on_the_target_computer._What_can_I_try.3F Where is your DLL and what does your app report for ctfroot?

Categories

Products

Asked:

on 27 Feb 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!