我有一个C#应用程序,它在m文件中创建用户界面和matlab函数 . 我需要做的是,当C#应用程序成功编译并打开用户界面时,我按下界面上的一个按钮,它使matlab运行m文件,同时还执行按钮事件应该执行的任务 . 目的是同时运行C#应用程序和matlab函数(同步) .
假设这是你的matlab函数:
function [output] = YourMatlabFunction( Input ) % % your code here % end
然后你可以用你的C#代码写:
Type MatlabType = Type.GetTypeFromProgID("Matlab.Desktop.Application"); Matlab.MLApp matlab = (MLApp.MLApp)Activator.CreateInstance(MatlabType); matlabGoTo = "cd " + "('" + pathOfYourFile + "')"; matlab.Execute(@matlabGoTo); object result = null; matlab.Feval("YourMatlabFunction", 1, out result, input); object[] res = result as object[];
要使进程保持并行运行,可以使用 Invoke 命令 . 这将并行执行您的操作 . 这是documentation的链接 .
Invoke
1 回答
假设这是你的matlab函数:
然后你可以用你的C#代码写:
要使进程保持并行运行,可以使用
Invoke
命令 . 这将并行执行您的操作 . 这是documentation的链接 .