您的位置:首页 > 编程语言 > MATLAB

MATLAB与C#混合编程

2011-05-04 16:22 197 查看
通过这段时间的摸索,我终于明白怎样在C#中调用MATLAB编译好的动态链接库,现把我的经验总结如下:

1、在matlab中建立一个带函数的m文件,如定义一个录音函数的m文件名为record.m。

2、在matlab中的命令窗口中输入命令deploytool,matlab中(我用的是matlab 7.11版本)会弹出一个名为Deployment Project的窗体,在New选项下可以设置Name、Location、Target,其中Name是指工程名,也是动态链接库的名称,在这里我将它设置为SoundRecord,Location为工程的存放路径,Target是指将要编译成的类型,点击下拉项,选择.Net Assembly类型,然后点击Ok,此时matlab中会显示Deployment Tool窗体,点击其中的Add class项,设置类名,这里设为record_cs,然后点击Add files,添加刚才写好的record.m文件,然后点击Deployment Tool窗体中的编译图标,这时开始将record.m编译成动态链接库,编译成功后会产生一个动态链接库SoundRecord.dll。
3.动态链接库在C#中的引用。新建一个C#窗体项目,在引用中添加SoundRecord.dll,在代码的引用命名空间中添加using SoundRecord;然后在按钮点击事件中实例化录音对象,代码为SoundRecord.record_cs luyin=new SoundRecord.record_cs();接着调用动态连接库的录音方法,代码为luyin.record();
这样就实现了在C#中调用在matlab中编译好的动态链接库。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: