Visual Studio 2008(C#)调用MATLAB 2008写的函数

具体方法有三步:

 

1,首先,利用Matlab Builder NE(Matlab中与.Net接口的组件)将Matlab函数打包到一个.net类里,然后再封装到.net组件里。(一个.net组件里可以包含多个.net类)。

 

方法是: 在matlab命令行下运行deploytool,在图形界面里选.net组件,然后进入一个工程目录的界面,新建工程,工程的名字就是.net组件的名字(例如testproj),在其下面的目录表示.net类名(例如testplot),在类名上点右键"Add File...",把Matlab的.m函数文件(例如plot1.m)选进去。

最后进行编译(Build the project),生成的目录下有以工程名命名的dll文件(例如testproj.dll)

 

2,进入Visual Studio 2008,建立的C#工程里,添加两个引用,

一个是<matlabroot>/dotnetbuilder/bin/win32/v2.0/mwarray.dll

另一个是工程本身的引用:上一步生成的testproj.dll

 

3, C#调用matlab函数的方法是:

(1)声明

using MathWorks.MATLAB.NET.Arrays;
using MathWorks.MATLAB.NET.Utility;
using test1proj;  // .net组件名

(2)调用

testplot  t=new testplot(); //.net类名

t.test1(); //点号后是调用的matlab方法名

 

补充说明:必须用Matlab 2008b以后的版本,用Matlab 2008a在创建对象时候会出现“System.TypeInitializationException”一类的异常,这应该是Matlab 2008a创建的dll的问题。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值