问题描述
网上有一些写C#调用matlab基本流程的,比如http://blog.csdn.net/yanqlv/article/details/5067872妹子是个菜鸟,对这些不懂,就照着上面的步骤做的。但是其中有一个问题,博客里面说的是在自己的电脑上matlab编译dll,然后同一台电脑上VS测试调用,现在我遇到的问题是不同电脑上调用出现的。同学A写了m文件,编译成A.dll,在自己的电脑上调用里面的函数成功。(matlab2013a+VS2010)但是把该A.dll和MWArray.dll发给我,VS中new的时候出现如下问题(matlab2012b+VS2010):于是同学A把m文件直接发给我了,在我的电脑上重新编译了一个B.dll,在我的VS下调用成功。同学C的电脑上没有安装matlab,只有VS2010,他分别引用我和A的两组dll,均会出现上述TypeInitializationException问题。(VS2010)这样就让我怀疑一个问题,dll能严格意义上完全脱离matlab环境吗?前面在做VS+ArcEngine的二次开发,在没有安装ArcGISDesktop的电脑上,需要安装ArcEngineRuntime运行许可文件。由此联想到matlab是不是类似,在有matlab的电脑上,已经有了许可,而在没有matlab的电脑上需要单独安装一个什么东西?小白没做过这类东西,请大神不吝赐教,不要鄙视我呀~~~
解决方案
本帖最后由 Shine_V_Zh 于 2013-12-13 17:25:28 编辑
解决方案二:
把目标平台改成x64或anycpu
解决方案三:
你要装相应版本的MatlabMCR,mathworks公司网站有相应的下载,免费使用
时间: 2024-09-15 20:12:04