VS2010调用Matlab 2010 引擎的相关设置及问题( error LNK2019: unresolved external symbol _engOpen referenced in )

一 相关设置:进入Property Manager 
                     1 点击VC++Directories
                      将.\Program Files\MATLAB\R2010b\extern\include\win64加入到Include Directories
                      将.\\Program Files\MATLAB\R2010b\extern\lib\win64\microsoft 加入到Library Directories
                     2 点击LInker input 将libmx.lib;libmex.lib;libeng.lib;加入到Additional Dependencies
                        或者用#pragma comment (lib, "libeng.lib")
                                  #pragma comment (lib, "libmx.lib")
                                  #pragma comment (lib, "libmex.lib"语句
                     3 环境变量加上.\Program Files\MATLAB\R2010b\bin\win64 否则编译成功运行时会                
                       显示缺少 dll
                     4包含头文件 engine.h
                     5这就可以去调用engine里的一些引擎函数了
二 问题:
1 编译出现:error LNK2019: unresolved external symbol _engEvalString referenced in function xx....这个问题如果你按照上述配置好的话,这就很有可能出在兼容问题上。我整了一上午,按网上的说法一直改路径包含什么的,没用。最后看到一篇英文帖子,一个人的一句convert 32 to 64,提醒我了。然后再Build 下configuration  manager 从32位转换为了64位的平台的项目,问题解决。注重自己matlab版本是32位还是64位 !

2 由于自己其他的库是32位的,所以只好又装了matlab7 (恰恰和2010相反,他只支持32位),装好以后,点击竟然是runtime error....
然后点击其桌面的快捷方式,修改其兼容性,我的系统是win7,改成了兼容visat,保存修改,点击成功运行。

你可能感兴趣的:(manager,Microsoft,matlab,引擎,dependencies,2010)