link .dll files with matlab

hi I have some .dll files and I would like to link them with Matlab. Is there a way to load and read them in matlab?

 Accepted Answer

Dasharath Gulvady
Dasharath Gulvady on 28 May 2015
You can use "loadlibrary" function to load and use the functions from a C/C++ DLL in MATLAB.
You can use "NET.addAssembly" to load a global .NET assembly in MATLAB:

2 Comments

Jo
Jo on 29 May 2015
Hi! many thanks for your answer. I tried using "loadlibrary" but I got this error:
"Error using loadlibrary (line 253) A 'Selected' compiler was not found. You may need to run mex -setup."
I used the ext=mexext and found out that ext = mexw64
The problem is that my files have to be used with the 32-bit version of IDL. If they can be read by Matlab it would also have to be a 32-bit version of Matlab.
Any ideas?
many thanks in advance
If your DLLs are 32-bit, then you can only load them on a 32-bit MATLAB. In any case, you have to select a compiler using "mex -setup"

Sign in to comment.

More Answers (1)

B.k Sumedha
B.k Sumedha on 29 May 2015
Edited: B.k Sumedha on 29 May 2015
It looks like you are using a MEX-function which used to have a .dll extension in very old releases of MATLAB. They now have extensions like mexw32, mexw64, etc. You can call these files directly like any other MATLAB function - there is no need to use LOADLIBRARY.
In any case, the issue is that MEX-files are platform-specific - the one you have is compiled for 32-bit Windows, so it won't be recognized on 64-bit MATLAB. If you have the source code corresponding to the file, you can use the MEX command to re-compile it for 64-bit Windows. Alternately, you can install 32-bit MATLAB on your 64-bit machines to run the 32-bit MEX-file. See How can I install 32-bit MATLAB on my 64-bit Windows machine? in matlab

Categories

Tags

Community Treasure Hunt

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

Start Hunting!