C# - 将变量传递给Matlab

3

典型的谷歌搜索无果,因此我向你们聪明的大脑求助: 我如何将我正在编写的C#类中的变量传递给Matlab(我通过“NET.addAssembly”函数与之进行交互)?

我在我的C#代码中是否应该引用某个.dll文件?如果是,它在哪里? 有没有一些文档和例子,教我如何从C#传递变量到Matlab? 我如何将C#本地变量转换为Matlab数组?

谢谢。

1个回答

0

这不是一件轻松的事,但你能做到。

首先,你需要使用C#编译一个*.DLL库。 你需要创建一个c# COM互操作类并使用公有和私有函数。- 如何将Microsoft.Kinect.dll添加到COM互操作C#类

然后,你需要:

-以管理员身份运行CMD

-打开C:\windows\Microsoft.NET\Framework\v4.0(或类似)文件夹

-在CMD窗口中cd路径目录

-将NAME_OF_YOUR_CLASS.cs复制到该文件夹中

-复制并粘贴csc /t:library NAME_OF_YOUR_CLASS.cs

-复制并粘贴regasm NAME_OF_YOUR_CLASS.dll /tlb /codebase

-打开Matlab并使用net.Framework访问可用的函数

在MATLAB中,你需要:

net = actxserver('ImageCreationMatlab.ImageCreationMatlabClass'); val = net.depthKinectTwo(filename,'kdpt',0,0,1);

这只是一个关于其他问题DLL的示例。

我会尝试找到有关创建类的链接/教程。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接