首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Matlab与.NET 4.0的数据通信

Matlab与.NET 4.0的数据通信
EN

Stack Overflow用户
提问于 2012-01-11 10:27:18
回答 1查看 3.2K关注 0票数 5

我有一个在Matlab语言中实现的算法,我计划将它作为一个动态链接库部署,以便与.NET项目集成。.NET项目是一个基于图形用户界面的应用程序,其中一小部分包括显示从运行算法获得的结果。我目前遇到的问题是,我需要显示中间结果。该算法相当复杂,需要进行多次迭代(由用户选择),并且在每次迭代结束时,应使用当前数据更新GUI。

目前我想到的最好的解决方案是让Matlab线程充当本地tcp服务器的tcp客户端,我将在C#图形用户界面应用程序中启动该服务器。然而,我觉得这种方法效率很低。我想知道是否可以通过其他方式实现这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-11 15:23:50

首先,从你的问题来判断,我猜你知道Matlab builder NE。它允许您部署.NET动态链接库。如果你不知道,那就试试吧。

关于你的选择:

1)您可以将一个.NET对象传递给您的Matlab代码,它将用作一种通信方式。创建此类的新实例,并将其作为输入发送到您的Matlab代码。Matlab代码将在每次迭代时调用UpdateGui逻辑。以下是C#中的示例

代码语言:javascript
复制
 class GuiUpdater{
      public void UpdateGui(int param1,int param2){
           //Do update logic here.
      }
 } 

2)将您的DLL编译为COM (在Matlab Builder NE中也是可能的),并使用COM通信。

3)使用文件系统作为通信手段。在Matlab中写入一个文件,然后在.NET中读取它。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8813407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档