VC和matlab混合开发遇到的问题及其解决办法
作者:朱金灿
来源:http://blog.csdn.net/clever101
1. error C2011: '_INTERFACE_INFO' : 'struct' type redefinition的问题。
对于VC 6.0工程,在StdAfx.h里的所有包含头文件之前添加下面两句代码:
#define WINVER 0x0501
#define _WIN32_WINNT 0x0501
对于VC 6.0以上的工程,则需要修改targetver.h,把其中的 0X0600 修改为 0X0501,即:
#define WINVER 0x0600 ===>> #define WINVER 0x0501
#define _WIN32_WINNT 0x0600 ===>> #define _WIN32_WINNT 0x0501
2.运行时出现__security_init_cookie的错误。
在集成mcc编译生成的库后运行出错,错误代码处为:
#if defined (_WIN64)
cookie = systime.ft_scalar;
#else /* defined (_WIN64) */
cookie = systime.ft_struct.dwLowDateTime; // 出错处
cookie ^= systime.ft_struct.dwHighDateTime;
#endif /* defined (_WIN64) */
请重新运行mex -setup 和mbuild -setup两个命令对编译器进行配置。
3.在使用mcc工具对m文件进行编译时出现错误:
The file
'E:\MyApp\src\CombineDev\Matlab\mccdemo1.dll'
appears to be a MEX-file. It shadows the M-file
'E:\MyApp\src\CombineDev\Matlab\mccdemo1.m'
but will not execute properly at runtime, as it does not export a function named 'mexFunction.'
??? Error using ==> mcc
Error executing mcc, return status = 1 (0x1).
请确保存放你的m文件下没有对应的dll文件。比如你要编译E:\MyApp\src\CombineDev\Matlab\mccdemo1.m,请保证E:\MyApp\src\CombineDev\Matlab目录下对应生成的dll文件mccdemo1.dll,如果有,请把它删除掉。
4.在编译VC工程(该工程链接m文件生成的库)时出现一个编译错误:错误 1 error C3861: “mclInitializeApplication_proxy”: 找不到标识符 d:\src\changedetect\processdata2\processdata2.cpp 31 ProcessData2
解决办法是:将#include <mclmcr.h>注释掉,改为包含mclmcrrt.h,对mclInitializeApplication函数进行前置声明,具体代码如下:
//#include "mclmcr.h"
#include <mclmcrrt.h> EXTERN_C bool mclInitializeApplication(const char** options, size_t count);
参考文献:
1.Matlab+VC混合编程的mclmcr.h重复定义错误解决方法
2.Matlab------------GUI编程:mcc命令参数用法
VC和matlab混合开发遇到的问题及其解决办法的更多相关文章
- VC和matlab混合开发学习
作者:朱金灿 来源:http://blog.csdn.net/clever101 第一种方式是直接调用Matlab Engine的接口.Matlab Engine 采用Client/Server的方式 ...
- VC和MATLAB混合开发需要注意的一个问题
作者:朱金灿 来源:http://blog.csdn.net/clever101 如果你的操作系统是64位操作系统,那么直接运行MATLAB的安装文件下的Setup.exe会默认安装的是64位的MAT ...
- VC 与Matlab混合编程之引擎操作详解
Visual C++ 是当前主流的应用程序开发环境之一,开发环境强大,开发的程序执行速度快.但在科学计算方面函数库显得不够丰富.读取.显示数据图形不方便. Matlab 是一款将数值分析.矩阵计算.信 ...
- 移动端开发底部元素margin-bottom失效解决办法
一.情景 记得之前开发一个微信端页面时,发现页面底部元素margin-bottom在ios下失效,在安卓内正常...... 1.safari浏览器内页面底部元素设置margin-bottom失效: 2 ...
- Android开发遇到的异常及解决办法
Android开发遇到的错误及解决方法1. Unable to resolve target 'android-7' 解决方案: 修改工程目录下的default.properties文件里的内容tar ...
- [转载]常见的移动端H5页面开发遇到的坑和解决办法
转过来,平时看看.虽然还有很多问题至今无解.比如:华为麒麟950的P8和meta打开我们的应用首页经常偶发白屏.!! 1.安卓浏览器看背景图片,有些设备会模糊. 用同等比例的图片在PC机上很清楚,但是 ...
- 使用MATLAB工具deploytool打包不成功的解决办法
下面解决方法是来自百度贴吧一抹伊静的解决办法,很好用,非常感谢,现记录下来以便后续查看: 这个问题是2014a 需要破解:下载一个破解文件,原因是matlab未完全破解,2014a的破解办法:http ...
- 常见的移动端H5页面开发遇到的坑和解决办法
转过来,平时看看.虽然还有很多问题至今无解.比如:华为麒麟950的P8和meta打开我们的应用首页经常偶发白屏.!! 1.安卓浏览器看背景图片,有些设备会模糊. 用同等比例的图片在PC机上很清楚,但是 ...
- VC和MATLAB混合开发经验总结
作者:朱金灿 来源:http://blog.csdn.net/clever101 前期准备: 1.请确认机器中已经安装Matlab主程序或(MCR)MATLAB Compiler Runtime(具体 ...
随机推荐
- Log4j 2使用教程 分类: B1_JAVA 2014-07-01 12:26 314人阅读 评论(0) 收藏
转载自 Blog of 天外的星星: http://www.cnblogs.com/leo-lsw/p/log4j2tutorial.html Log4j 2的好处就不和大家说了,如果你搜了2,说明你 ...
- 【Codeforces Round #301 (Div. 2) C】 Ice Cave
[链接] 我是链接,点我呀:) [题意] 给你一个n*m的地图. 每个地图为0的时候可以安全走过,且走过后变成1. (一定要离开之后才会变成1) 而为1的则走过之后会掉入下一层. 你一开始在初始位置( ...
- IDEACould not autowire. No beans of 'xxxMapper' type found.
作为一名刚开始使用idea的新手,最近在使用maven+springMVC框架时遇到了这样一个问题:Could not autowire. No beans of 'xxxMapper' type f ...
- UVA 11280 - Flying to Fredericton SPFA变形
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&c ...
- addSubview 与 removeFromSuperview
//当前视图的父视图添加和本视图同级的视图 [self.view.superview addSubview:showview.view]; //从父视图移除当前视图 [self.view remove ...
- php实现求链表中倒数第k个节点
php实现求链表中倒数第k个节点 一.总结 $head = $head->next; //1.将$head节点next域里面的记录的那个地址值($head节点的下一个节点的地址)给$head,$ ...
- Range锁(也即范围锁)
浅析SQL Server在可序列化隔离级别下,防止幻读的范围锁的锁定问题 本文出处:http://www.cnblogs.com/wy123/p/7501261.html (保留出处并非什么原创作品权 ...
- angular模块详解
原文: https://www.jianshu.com/p/819421ff955a 大纲 1.angular应用是模块化的 2.对模块(Module)的认识 3.模块的分类:根模块和特性模块 4.N ...
- Spring+Netty+WebSocket实例
比较贴近生产,详见注释 一.pom.xml 具体太长,详见源码 </dependency> <dependency> <groupId>io.netty</g ...
- ios开发runtime学习三:动态添加方法(实际应用少,面试)
#import "ViewController.h" #import "Person.h" /* 1: Runtime(动态添加方法):OC都是懒加载机制,只要 ...