CSDN博客

img faithcj

VC+Matlab混合编程经验总结

发表于2004/11/3 12:52:00  1942人阅读

        用过matlab的人都会惊叹它在数值处理和绘图方面的强大,可一般用户使用它还是感到有些难度的。能不能利用matlab做出让一般用户都能操作、界面简单友好的程序出来呢?本文尝试的就是一种把matlab的m文件编译成dll让vc调用的混合编程方式。这样得到的程序有几个好处:1.可脱离matlab环境运行;2.利用了vc的程序的快速,又方便用户使用的特点。下面简述一下我做的一个这方面的程序的过程。

       1.在matlab的命令行窗口里输入mex -setup,回车确认后根据提示选择vc6;

       2.在matlab的命令行窗口里输入mbuild -setup,回车确认后根据提示选择vc6;

       3.最后依次输入cd(prefdir)和mccsavepath命令,至此matlab里的相关设置已完成;

       4.打开vc,在tools-Customize-Add-ins and Macro Files,会看到Matlab Add-ins已出现。选择它;

       5.在File-New-Projects出现了Matlab Project Wizard选项,选择它,根据向导创建Matlab Project 程序,注意的是在Visual Matlab Application Type组合框里选择Shard M-Dll,因为我们要用它来编译matlab的m文件为dll;

       6.至此,vc里的设置也已完成,点击工具栏上的Add m-files to Current Project按钮,就可以编译m文件为dll供里的vc程序调用了。如果是图形程序,编译后在程序所在文件夹下有个bin子文件夹,其中有FigureMenuBar.fig和FigureToolBar.fig两个文件,从名字可看出,包含了它们图形窗口界面即有了菜单和工具栏。把该文件夹和dll文件、lib文件及头文件拷贝到里的调用它们的vc程序下。

      7.最后在打包时还有个注意事项,要使里的程序真正完全脱离matlab环境运行,还必须把相应的许多matlab库文件打包。位于matlab安装目录中extern/lib/win32子目录中的mglinstaller.exe。运行该程序即可自动把需要的库函数解压到当前目录中。

阅读全文
0 0

相关文章推荐

img
取 消
img