Matlab2016 与vs2015 混编(生成dll动态链接库)

来源:互联网 发布:淘宝买家资料获取器 编辑:程序博客网 时间:2024/06/17 12:11

关于混编的配置请移步下面的博客,笔者用的是Matlab2016b与Matlab2016进行混编的。



 http://blog.csdn.net/wind_liang/article/details/51402224

 

博客里面非常详细的讲解了应该如何配置 Vs 以及利用matlab生成 dll 文件,这里不再赘述。


混编期间遇到了不少的问题,下面主要将遇到的问题写下来。

需要特别注意将matlab生成的 dll、h、lib文件复制到你所建立 c++ 程序的工程目录下面,否则会报错(无法启动应用程序,因为计算机中丢失。。。)


需要复制的三个文件的截图

1.1

因为丢失上述三个文件导致报错的截图



下面讲述在配置过程中可能出现的一些并不常规的错误(引发的异常0xC0000005:读取位置发生访问冲突



此时似乎束手无策,但是仔细看箭头所指打勾的部分,直接去掉那个勾再重新编译一下项目,然后发现直接闪退,这是因为VS在初始化matlab生成的dll文件时就失败了,为了找到原因需要将dos窗口停下来,直接加上  下面的让执行停止,仔细看dos窗口中的内容

system("pause");


dos 窗口中的内容显示如下


从上面的内容可以清晰的看到,出现这个问题的主要原因就是你Matlab文件夹下的某个工具箱访问出错,也就是你装了一个工具箱到Matlab ,并且这个工具箱会会在matlab运行的时候直接启动,这样直接导致matlab生成的dll文件中也包含了这个文件,所以直接去matlab的 安装目录下找到toolbox\local 路径删除里面的 startup.m文件,然后在重新用matlab生成一下dll文件就可以了。

 




原创粉丝点击