using C# functions in matlab

Hi, I wanted to use functions from a c# dll in matlab. How would I do this using version 2010a
Thanks Barinder

Answers (2)

Kaustubha Govind
Kaustubha Govind on 13 Feb 2012
Edited: Kaustubha Govind on 19 Nov 2012
Is it a .NET library? If yes, see Using .NET Libraries from MATLAB.

7 Comments

Right, for .NET MATLAB has a different API. The command to start with is NET.addAssembly.
I tried using NET.addAssembly('X.dll') and I get the following message back.
??? 'X.dll' could not be found in the .NET Global Assembly Cache (GAC)
I have no clue what this means.
Thanks Barinder
See http://msdn.microsoft.com/en-us/library/dkkx7f79(vs.71).aspx
After using the utility gacutil /i X.dll I now get a different message from matlab.
"Could not load file or assembly 'EZ_B, Version=2012.2.8.0, Culture=neutral,
PublicKeyToken=839146fd54f35ea1' or one of its dependencies. The system cannot find the file specified.
Source: mscorlib
HelpLink:"
Any ideas?
Thanks
Barinder
Sorry, I don't have any experience with .NET assemblies, but you might be able to find something by searching on the web. Does your DLL load a third-party assembly called EZ_B? Looks like that DLL (or one of its depedencies) could not be loaded. You probably need to register all those DLLs also with GAC, or add it to the system path: http://stackoverflow.com/questions/951259/could-not-load-file-or-assembly-or-one-of-its-dependencies-access-is-denied
The suggestion to see "Using .NET Libraries from MATLAB" looked primising, but the link is broken.
Thanks for pointing that out, John! Fixed the link.

Sign in to comment.

Walter Roberson
Walter Roberson on 10 Feb 2012
See loadlibrary() . You will need a .h file for the dll .

Tags

Asked:

on 10 Feb 2012

Edited:

on 12 Oct 2013

Community Treasure Hunt

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

Start Hunting!