我有一个很大的问题。
ich 编写了一个使用 matlab dll 的程序。我用 matlab .net builder 构建了一些类。它在我的电脑上运行 :)
问题是,我想在没有 matlab 的电脑上使用 ist。所以我安装了 mcr,但它不运行:(
我应该采取哪些步骤?系统变量路径是正确的......我必须把dll文件放在哪里?这么多问题,请帮帮我
我有一个很大的问题。
ich 编写了一个使用 matlab dll 的程序。我用 matlab .net builder 构建了一些类。它在我的电脑上运行 :)
问题是,我想在没有 matlab 的电脑上使用 ist。所以我安装了 mcr,但它不运行:(
我应该采取哪些步骤?系统变量路径是正确的......我必须把dll文件放在哪里?这么多问题,请帮帮我
Matlab-“编译器”可以构建一个可安装的包,其中包含足够的 Matlab 供您的应用程序运行。
您可以将代码的 Matlab-Parts 移植到 Embedded Matlab 并翻译 Matlab -> C with emlc
,它包含在一些工具箱中,如 Realtime Workshop。生成的 C 代码完全可以在没有 Matlab 的情况下使用。
您可以在另一台 PC 上设置 matlab 运行时。
它比matlab小得多。
在目标机器上安装 MCR 是正确的第一步。您是如何构建 .NET dll 的?您使用的是 DEPLOYTOOL还是MCC?请注意,我提供的链接适用于 MATLAB Compiler。确保您使用特定版本的 MATLAB Builder 的文档,在您的情况下可能是 MATLAB Builder NE。如果你做对了,DEPLOYTOOL 或 MCC 的输出将是一个可执行文件,它将你的 DLL 及其依赖项安装在目标机器上。在 MCC 中,查找-B 'dotnet:'
告诉 Builder 生成 .NET dll 的选项。
安装 MCR(注意:如果 dll 是 32 位,则安装 32 位 MCR,如果 dll 是 64 位,则安装 64 位 MCR)
在 C# 代码中添加以下引用:
一个。MWarray
湾。micrsoftcsharp
C。创建的dll
在代码中添加以下内容:
using MathWorks.MATLAB.NET.Arrays;
using MathWorks.MATLAB.NET.Utility;
using (dllname);
声明类。例如:
Class1 test1 = null;
创建class1
类的实例。例如:
test1 = new Class1();
调用 dll 函数/调用方法。例如:
MWNumericArray c = test1.createFit4((MWNumericArray)x, (MWNumericArray)y).ToArray();