Matlab和C#之间的互操作
在浏览互联网之后,看起来可以在C#和Matlab之间进行互操作。 我想知道是否有人取得了成功以及他们做了什么。 如果可能的话,不使用COM就把它拉下来。 谢谢你的时间。
是的,很有可能。 虽然我最终使用C接口并使用混合模式DLL调用它(并让C#调用它…但那是因为我还与其他一些C代码接口)。 这很简单。 在要运行程序的计算机上,您需要安装Matlab Runtime MCRInstaller.exe。
编辑:删除断开的链接
从R2009a发布的MATLAB开始,可以从MATLAB访问.NET对象:
http://www.mathworks.com/help/techdoc/matlab_external/brpb5k6.html
在旧版本的MATLAB中,可以使用CCW从MATLAB访问.NET对象:
http://www.mathworks.com/support/solutions/data/1-5U8HND.html?solution=1-5U8HND
和.NET的MATLAB引擎:
您还可以使用MATLAB Builder NE将m代码包装到.NET程序集中。
是的,我设法做到了这一点,它几乎是无痛的。
您必须编译.NET的MATLAB代码(如前面的答案中所述),运行MCR安装程序,参考MWArray.dll以及.NET项目中的编译代码dll,然后离开。
唯一的烦恼是界面强迫你施放(有时多次铸造!)(在施法操作符中使用显式)
Matlab有一个免费的开源.NET包装器,它非常简单: http : //www.codeproject.com/KB/dotnet/matlabeng.aspx
我用这个。
在R2009a预发行版中,您可以从MATLAB调用.net程序集。
我不确定这对你有多大,但是尝试查看matlab可执行文件或MEX基本上,用C或FORTRAN编写程序真的很容易,包括一些库和函数,然后你可以使用C或FORTRAN函数在matlab中