CAD教程 行业资讯 3D模型下载 Pro/E教程 CAD书店 软件下载 联系我们
技术资料 CAD招聘 发布招聘 CAD问答 设计竞赛 CAD认证 北京CAD培训
视频教程 PS教程 CAD图纸 图书推荐 Solidworks教程 CAD培训 CAD软件商

 最新视频教程Pro/ENGINEER Wildfire2.0 工业设计实例视频教程 (全套免费在线学习)   AutoCAD视频教程每日更新
 
首页 > CAD在线问答 > matlab

在vc++中利用com实现与matlab混编问题,急!!

2010-10-06 51自学网



利用com实现vc++与matlab混编c程序如下if(FAILED(CoInitialize(NULL))) { AfxMessageBox("unable to initialize COM"); } Ical *st=NULL; HRESULT hr=CoCreateInstance(CLSID_cal,NULL,CLSCTX_ALL,IID_Ical,(void **)&st);matlab程序如下function out=simulation(m_blaser,m_ndistant)if(strcmp(m_blaser,'m_blaser1')) t=0.01:0.01:30; t=3000.*t; T1=exp(-0.5*10^(-4)).*t; alpha=(1/m_ndistant).*log(T1);endif(strcmp(m_blaser,'m_blaser2')) t=0.01:0.01:30; t=3000.*t; T2=exp(-5*10^(-4)).*t; alpha=(1/m_ndistant).*log(T2);endif(strcmp(m_blaser,'m_blaser3')) t=0.01:0.01:30; t=3000.*t; T3=exp(-10*10^(-4)).*t; alpha=(1/m_ndistant).*log(T3);endplot(t,alpha)out=mean(alpha);编译后出现错误:error C2664: 'simulation' : cannot convert parameter 2 from 'int *' to 'struct tagVARIANT *'求高手帮忙解决,小弟是刚好需要用到com才开始学的,连入门都还没。。。急!!!!所有积分都压上了,虽然不多。
c程序补充如下 if(FAILED(CoInitialize(NULL))) { AfxMessageBox("unable to initialize COM"); } Ical *st=NULL; HRESULT hr=CoCreateInstance(CLSID_cal,NULL,CLSCTX_ALL,IID_Ical,(void **)&st); if(SUCCEEDED(hr)) { if(m_blaser1) { st->simulation(1,&out,m_blaser1,m_ndistance1); st->Release(); AfxMessageBox("succeed"); Info+="m_blaser1"; }




 

 

MATLAB 中 Index exceeds matrix dimensions.错误
Matlab利用comtool生成dll文件老是出错!
我来回答 共有条 回答
用户名: 密码:
验证码: 匿名发表
| AutoCAD | Pro/E | UG | 3Dmax | catia | solidworks | maya | photoshop | 模具设计 | 有限元 | matlab | 计算机图形学 | 室内设计 |