1. 你可以将matlab的m文件编译成dll文件,然后在C#程序中引用,运行环境需要安装MCR;
2. 通过COM调用,这会开启matlab进程。参考:http://www.mathworks.com/help/matlab/matlab_external/call-matlab-function-from-a-c-client.html,这里只能创建一个matlab进程,如果需要创建多个进程,可以参考:https://code.google.com/p/matlabapi/
2. 通过COM调用,这会开启matlab进程。参考:http://www.mathworks.com/help/matlab/matlab_external/call-matlab-function-from-a-c-client.html,这里只能创建一个matlab进程,如果需要创建多个进程,可以参考:https://code.google.com/p/matlabapi/
遇到问题:
1.在C#引用的时候 生成的.dll文件会遇到版本的问题。这时候我们要看自己用的VS版本和生成的是否一致。
2.C#代码里面 引用传值的时候要进行数据的转换。
将c#的参数输入到matlab函数时,要将参数转化为matlab的参数形式,通常是MWArray类型.matlab返回的参数,也要转化为c#用的类型,比如数组或者数值类型。
现在问题:
如何在C#里面调用MATLAB的工具箱以及函数。
这个没有实现(待定)
推荐下大家看这个博客和打家分享下。
http://blog.sina.com.cn/s/blog_6622f5c30100hhja.html
项目正在尽兴中:。
2. 确保环境变量正确 path后添加:C:\MCR\v713\runtime\win32
3. 运行 -> regsvr32 mwcomutil.dll
4. 重新build .dll文件,package中选择add MCR,setting中设置assembly type为shared,encryption keyfile设为空,再把新生成的dll文件拷贝到那台电脑,替换,重新引用
这几个方法。
现在安装MCR配置win764的时候报错。、哪位大侠有更好的建议!