You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET项目调用MWCharArray遇System.TypeInitializationException问题求助

解决.NET项目加载mclmcrrt9_0_1.dll失败的问题

以下是你可能遗漏的排查点:

  • 环境变量未生效:设置Path后,必须重启Visual Studio甚至电脑,才能让新的环境变量被进程读取。另外确认是把C:\Program Files\MATLAB\MATLAB Runtime\v901\runtime\win64添加到系统环境变量的Path中,而非仅用户变量,避免权限或优先级问题。

  • 项目平台位数不匹配:MATLAB Runtime v901是64位版本,你的.NET项目必须将平台目标设置为x64(右键项目→属性→生成→平台目标),如果设为x86或Any CPU,会导致无法加载64位DLL。

  • 未初始化MWArray:在使用MATLAB.NET组件前,必须先初始化MWArray。在项目启动代码(比如Program.cs的Main方法开头)添加:

    MathWorks.MATLAB.NET.Arrays.MWArray.Initialize();
    

    未初始化会触发类型初始值设定项异常,进而导致DLL加载错误。

  • 引用的MWArray组件版本不匹配:检查项目中引用的MWArray.dll版本是否为v901(对应MATLAB R2016b)。如果引用的是其他版本的组件,即使Runtime版本正确,也会出现加载失败。需确保引用的组件与Runtime版本完全一致。

  • 手动复制DLL到输出目录:临时测试方案,将mclmcrrt9_0_1.dll复制到项目的输出目录(如bin\Debug\x64),验证是否是路径读取问题。若可行,再排查环境变量的配置问题。

  • 修复MATLAB Runtime安装:如果以上都无效,可能是Runtime安装不完整。打开控制面板→程序和功能,找到MATLAB Runtime v901,选择修复,重新完成安装。

内容的提问来源于stack exchange,提问作者Sourabh Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 15:37:38