matlab与vc通过COM混编的疑问
我想用VC做界面,神经网络算法用MATLAB做好,通过COM形式被VC调用。目前在学习这方面的例子,但是按照例子的步骤做,最后程序运行后点击我做的按钮, 老是说 exe运行遇到问题,然后就关闭了。不知道是什么原因。我把写的两个按钮对应的函数贴出来。void CPlotView::OnButtonStart()
{
// TODO: Add your command handler code here
plot.CreateDispatch(CLSID_plot,NULL);//创立接口
COleDispatchDriver();
}
void CPlotView::OnButtonPlot()
{
// TODO: Add your command handler code here
const int N=100; //数组大小
double a;//数组定义
double f=50;//正弦信号频率
double Ts=0.002; //采样时间
//赋值
for (int i=0; i<N; i++)
{
a=sin(2*PI*f*i*Ts);
}
//任意变量
VARIANT x;
VariantInit(&x);//初始化
x.vt=VT_ARRAY|VT_R8; //类型(数组,双精度型)
SAFEARRAYBOUND rgsabound;
rgsabound.cElements=N; //数组所含元素数
rgsabound.lLbound=0; //数组上界
//创立数组
x.parray=SafeArrayCreate(VT_R8,1,rgsabound);//创立一维数组
//锁定数组
SafeArrayLock(x.parray);
//数组传递数据
x.parray->pvData=a;
//调用方法
plot.plot_test(x);
//解锁
SafeArrayUnlock(x.parray);
} 我对这个也很有兴趣。你能把你的matlab程序和VC工程发给我看看么? 原帖由 chen251213 于 2008-1-8 09:09 发表 http://www.chinavib.com/forum/images/common/back.gif
我对这个也很有兴趣。你能把你的matlab程序和VC工程发给我看看么?
怎么发给你呢?
回复 #3 sunhmm100 的帖子
可以通过站内短信息也可以直接发到这个贴里面.. 就我的个人经验来看是你的接口创建有问题,
页:
[1]