在互联网上偷看后,看起来可以在C#和Matlab之间进行互操作。我想知道是否有人取得了成功以及他们做了什么。如果可能的话,不使用COM就把它拉下来。谢谢你的时间。

有帮助吗?

解决方案

是的,很有可能。虽然我最终使用C接口并使用混合模式DLL调用它(并让C#调用它...但那是因为我还与其他一些C代码接口)。这很简单。在要运行程序的计算机上,您需要安装Matlab Runtime MCRInstaller.exe。

编辑:删除损坏的链接

其他提示

从MATLAB的R2009a版本开始,可以从MATLAB访问.NET对象:

http://www.mathworks.com/help/techdoc/matlab_external/ brpb5k6.html

在早期版本的MATLAB中,可以使用CCW从MATLAB访问.NET对象:

http://www.mathworks。 COM /支持/溶液/数据/ 1-5U8HND.html?溶液= 1-5U8HND

和.NET的MATLAB引擎:

http://www.mathworks.com/access/helpdesk/help/techdoc/index.html?/access/helpdesk/help/techdoc/matlab_external/f135590.html#f135616

您还可以使用MATLAB Builder NE将m代码包装到.NET程序集中。

http://www.mathworks.com/products/netbuilder/

是的,我设法做到了这一点,而且几乎没有痛苦。

您必须编译.NET的MATLAB代码(如前面的答案中所述),运行MCR安装程序,参考MWArray.dll以及.NET项目中的编译代码dll,然后离开。

唯一的烦恼是界面强迫你施放(有时是多次铸造!)(在施法操作符中使用显式)

Matlab有一个免费的开源.NET包装器,它非常简单: http://www.codeproject.com/KB/dotnet/matlabeng.aspx

我用它。

在R2009a预发布版中,您可以从MATLAB调用.net程序集。

我不确定这对您有多大影响但是请尝试查看matlab可执行文件或 MEX 基本上,用C或FORTRAN编写程序真的很容易,包括一些库和函数,然后你可以在matlab中使用C或FORTRAN函数

如果你愿意花钱,这可能就是你所需要的:

http://www.mathworks.com/products/netbuilder/

它可以为Matlab代码生成包装器,允许从.NET和COM中调用它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top