私は非常に大きな問題を抱えています。
ichは、matlabdllを使用するプログラムを作成しました。matlab.netBuilderを使用していくつかのクラスを作成します。それは私のPCで実行されます:)
問題は、MATLABのないPCでistを使用したいということです。だから私はmcrをインストールしましたが、実行されません:(
私がすべきステップは何ですか?システム変数のパスは正しいです...dllファイルをどこに置く必要がありますか?たくさんの質問、助けてください
私は非常に大きな問題を抱えています。
ichは、matlabdllを使用するプログラムを作成しました。matlab.netBuilderを使用していくつかのクラスを作成します。それは私のPCで実行されます:)
問題は、MATLABのないPCでistを使用したいということです。だから私はmcrをインストールしましたが、実行されません:(
私がすべきステップは何ですか?システム変数のパスは正しいです...dllファイルをどこに置く必要がありますか?たくさんの質問、助けてください
Matlab-「コンパイラ」は、アプリを実行するのに十分なMatlabを含むインストール可能なパッケージを構築できます。
Matlab-コードの一部をEmbeddedMatlabに移植し、Matlab-> Cをで変換できますemlc
。これは、RealtimeWorkshopなどの一部のツールボックスに含まれています。結果のCコードは、Matlabなしで完全に使用できます。
他の PC で matlab ランタイムをセットアップできます。
これは、matlab よりもかなり小さいです。
ターゲット マシンに MCR をインストールすることは、正しい最初のステップです。.NET dll をどのようにビルドしましたか? DEPLOYTOOLまたはMCCを使用しましたか? 私が提供したリンクは MATLAB Compiler 用のものであることに注意してください。使用している MATLAB Builder の特定のバージョンのドキュメントを使用していることを確認してください。この場合、おそらく MATLAB Builder NE です。正しく実行すると、DEPLOYTOOL または MCC の出力は、DLL とその依存関係をターゲット マシンにインストールする実行可能ファイルになります。-B 'dotnet:'
MCC で、Builder に .NET dll を作成するように指示するオプションを探します。
インストール済みの MCR (注: dll が 32 ビットの場合は 32 ビットの MCR をインストールし、dll が 64 ビットの場合は 64 ビットの MCR をインストールします)
C# コードに次の参照を追加します。
を。MWarray
b. 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();