打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
matlab vc6.0 asp.net

刚才终于把纠结了好久的一个关键问题解决了,从四月份正经开始做毕设到现在,感觉学了好多好杂的东西,像图像处理、matlab、MFC、ASP.NET、com组件、还有最痛苦的混合编程,其实写日志的目的,也就是想分享一下用com组件将matlab和vc6.0还有matlab和asp.net连接起来的经验,可能很简单,但是对于做图像处理的人应该是很有用的,

首先,想说为什么要采用混合编程,用vc做图像处理的同学应该都很清楚这个过程是多么痛苦,当然了,你的目标仅限于处理位图那就没有那么复杂了,可是面对N种图像格式的时候,这就需要特牛的技术了,要自己定义类和方法,来读入处理图片,我自认为我没那个高度,所以就取巧用matlab,发现它太强大了,随便告诉它你要干什么,它就帮你做了,但是matlab做界面的能力就不是很强,做网站的话,我还没听说过可以

,这样的话,如果你想要更炫的界面,或者更完善的提供网络服务就要用到其他的软件,如vc6.0,VS2008。

所以我最开始的切入点就是怎么将这两个工具结合起来,由于开始的时候想学MFC,所以主要就是找一些能将matlab和vc6.0连接起来的方法,最后知道的方法有两种:一是matcom,再一个就是com组件的方法了,matcom给我的直观感觉就是将写好的matlab代码转换为C++的代码,然后通过在这段代码前后加入vc6.0提供的方法,让编译器识别这段代码,有兴趣的可以自己在网上查一下,个人不支持这个做法,代码看起来很复杂,很难懂,修改起来也不是很容易;推荐的是第二种方法,用com组件,很灵活的一种方式,如果你问我什么是com组件的话,我会很认真的告诉你我也不知道

,我只是会用而已,matlab中有个工具叫comtool,专门用与生成组件的,至于怎么生成就不详解了,只要打开那个界面,按提示就会做好的,不过切记的是只有函数文件可以做成组件,而不是所有的.m文件都可以用来做组件,做好组件之后,你会在目录下发现一个名为src的文件夹,我们需要用到的是当中的mwcomtypes.h、bsimagecom_idl_i.c和bsimagecom_idl.h其中后两个文件的名字根据不同的组件会不同,但下划线后面的部分是不会变的,将这三个文件拷到你的project下(还有一点要特别注意,虽然是把这三个文件拷到目录下,其实我们最终用到的是distrib目录下的那个动态链接库),将文件拷贝后,下一步就是打开看一下,O(∩_∩)O~,这不是废话,因为你要在里面找你的类名,这个类名和你自己在做组件时定义的类名有点出入,不过我做了好多尝试之后发现,都是在你给的类名前面加个I后面加个class,不过还是自己找一下会放心一点,用这个类定义个对象,接下来就是调用组件了,切记要初始化的CoInitialize(NULL);之后通过CoCreateInstance()方法调用,这个函数的参数和返回值在MSDN中都可以查到,由于我自己也不是将他们完全搞懂,所以有兴趣的自己去体会那些英文的意思吧;之后就可以做你想实现的功能了;其实现在说起来简单的很,可是当时耗费了我两天时间才把这个调用弄好,再有就是,如果你的matlab函数是需要传参的话,那恭喜你了,那会更麻烦的,为了统一类型,调用的matlab函数,所有传参类型都是VARIANT类型的,其实只要注意转换就好了。

上面说的是matlab和vc6.0的连接;当我用这个方法实现了我的算法之后,又突发奇想想做一个B/S的东西,顺便学一下asp.net,在学了一段asp之后,开始着手做我的系统,这样就涉及到了matlab和asp.net的连接了,出发点还是组件,而且这次调用组件比vc6.0那个简单多了,新建一个网站,添加一页,(我用的是VS2008)在网站那项下有一项添加引用,弹出的对话框中会列出本机中所有的动态链接库,选择你是先做好的动态链接库,这里就用到了你做组件时给出的类名了,在你要用到matlab的时候,只要将类添加到命名空间就可以了,之后就可以随心所欲了,呵呵!!!

这些问题是难为了我好久,让我郁闷了好久的问题,所以在不断尝试的时候,我就对自己说弄好之后,一定要把它记下来分享出去,一是方便有需要的人,更重要的是希望有牛人出现指点我一下,看是否有更好的方法,或者说其中的每一步都是为什么,因为我现在只是会做,可是并不知道为什么这样做可以

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
软件相关技术及其在国内的应用
ASP页面与ASP.NET页面的区别
C#面试题和答案
C#调用Matlab 生成的com组件,生成com 时错误的解决
浅析VC与Matlab联合编程<三> - VC知识库文章
.net面试题大全(有答案)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服