C#调用matlab函数报错system.typeinitializationexception的解决方法

时间:2020-09-17 21:41:47   收藏:0   阅读:45

问题现象:

  C#程序调用matlab函数编译出的.dll程序时出现报错system.typeinitializationexception。

解决方法:

1、需要在运行该程序的电脑中安装matlab编译器,且matlab编译器版本与编译该matlab函数时使用的版本一致(matlab编译器并不是matlab软件)。

  例如:博主所用的matlab函数是使用R2014a 32位的编译器编译出的.dll文件,那么要运行该程序的电脑就必须要安装matlab R2014a 32位的编译器。matlab编译器下载地址:

  https://ww2.mathworks.cn/products/compiler/matlab-runtime.html

2、在编译C#程序之前进行以下配置

  生成》配置管理器》活动解决方案平台

  如果使用的matlab编译器是32位的,则选择X86,如果是64位的则选择X64

技术图片

 

   在解决方案管理器上面点击属性》生成,图中两个位置

  如果使用的matlab编译器是32位的,则选择X86,如果是64位的则选择X64。

技术图片

 

   最后运行,看是否还会报错。

  如果仍然报错,可以参考以下一位大佬的博文对程序进行详细检查:

  http://blog.sina.com.cn/s/blog_6622f5c30100hhja.html

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!