建议软件下载顺序
Vs 、 matlab
按照上面的软件安装顺序安装软件!!,如果不是,那就重新装matlab吧,没有什么别的很好的快捷的办法。
用这个方法最大的好处就是,直接使用的是MATLAB引擎,MTALAB有什么运行什么,不受任何限制,但是若是MATLAB中,有代码错误,是没有办法提示的,matlab就直接不运行了。所以在VS界面运行之前,务必确保M这边没有任何语法上的错误。
在写代码之前,在引用—COM中,找到这个,勾选上(如果没有,那么就是软件安装顺序错了,把matlab卸载了,再下载回来就是了,这样matlab就能自动识别COM)
前面几行是固定操作,记得在前面引用上MLAPP
using MLApp
//create a connection
MLApp.MLApp matlab = null;
Type matlabAppType = System.Type.GetTypeFromProgID("Matlab.Application");
matlab = System.Activator.CreateInstance(matlabAppType) as MLApp.MLApp;
//
matlab.Execute("clear all");
matlab.Execute(@"cd E:\modelfirst");//test函数所在地址,写到文件夹就行,别写.m文件名
matlab.Execute(@"not=test(2)");//引号里面就是.m函数
最后一句是matlab的函数名,写了一个非常简单的.m函数如下,这里结尾不需要加end。当然我,这样子写是不需要matlab给回参的,就只是运行了想运行的.m代码。
function not=test(a)
not=a*2