C#调用Matlab函数详细步骤

由于项目开发需要,稍微研究了下C# 调用Matlab生成的动态库dll,实验过程中遇到的一些问题,按照网上的许多办法没有用,记录下自己的解决过程。

Matlab打包为.net动态库的过程我就不再详述,网上靠谱的教程比较多,我只拿到matlab生成的动态库文件和版本信息,首先需要根据生成dll的matlab的版本安装对应的matlab 运行时,版本一定要保持一致。

其次,在安装完成后,需要在系统环境变量增加额外的配置,具体配置如下图所示:

 其次,需要引入你要调用的dll和matlab运行时安装路径下的动态库MWArray.dll,该文件路径如下图所示:

 

遇到该问题:

Class1'的类型初始值设定项引发了异常。”。 内部异常说:“'MathWorks.MATLAB.NET.Utility.MWMCR'的类型初始化程序引发了异常。”。

解决方案:编译环境的目标平台组要设置为与matlab一直,即与你安装的matlab运行时也要一致。

其二:需要按照上面环境变量的配置要求配置好环境变量,配置好环境变量最好重启下电脑,保证正常生效。

其他注意事项:

在调用MWArray类时出现问题,此时应注意你所用的MWArray的环境需要和你的项目平台保持一致。即,引用的win64下的MWArray时,c#的项目平台应该是x64。

问题②

在实例化对象处报错(因为我的环境配置好的,修改环境需要重启电脑,所以就没有去把错误调处来)。报错依然是类型初始化异常。

此时就应该查看MCR(Matlab Runtime)与项目平台以及MATLAB\R2017b\bin\win64三者是否保持一致。
————————————————
参考自博客:
原文链接:https://blog.csdn.net/a345758541/article/details/83893871

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值