发现一个问题,不知是不是matlab的bug
这个问题是在用vc调用com组件的时候发现的。我的平台是xpsp2,vs2005,matlab r2007a,IBM T42笔记本。系统搭建的目的是用vc程序读入一段wav文件,然后进行处理,最后把处理结果交给matlab显示。在matlab下用deploytool将m文件打包成dll文件。然后在vc下调用。我发现,如果我没有使用vc下的文件操作,也就是没有调用CFile类打开波形文件,而是把自己生成一段数据交给这个com组件显示,一切结果正常。但是如果是使用了vc下的文件操作,则断点跟踪没有任何问题,相应的函数也都执行了,但最后什么图形都没有显示。
一开始我还以为是我写的程序有问题,最后决定用mat文件把处理结果保存下来,再用matlab调用显示。这时怪事又来了,跟上面一样,如果是自己生成的一个数组,保存为mat文件没有任何问题。但调用了CFile类打开波形文件后,matOpen函数虽然执行了,但没有生成任何文件。
在网上搜了半天也没看到有解决方案。现在准备用mcc编译m文件的方法生成c++文件包含在工程中调用,看能否避免这个问题。不知道各位兄弟有谁遇到过这种问题,不吝赐教。 补充一句,用完CFile类后,都执行了CFile.Close();释放了相关资源。不会是资源冲突的问题。 没人知道吗?
解决了吗?
我碰到了同样的问题,不知道版主是否已经解决了?希望能告知方法。
页:
[1]