Matlab R2013a(8.1.0.604)を使用して.dll(.Netアセンブリ)をエクスポートしようとしています。 C#のVisual Studio 2013のdllファイル。 Matlabtest.dllとMWArray.dllの.dllファイルへの参照を追加しました。今では、クラスのオブジェクトを "追加"(Matlabtest.dllからのクラスの名前)にしようとしていますが、Visual Studioはエラーなく動作し、クラスのオブジェクトを作ることができません。参照コードなどを含む任意のソリューションを提案してください。何が足りないのかは、提案と助けが必要です。ここではここビジュアルスタジオC#2013でmatlab .dllをインポートすると問題が発生する
は私のMATLAB関数である
function output = adding(a,b)
output = a + b;
end
は、ボタン上の私のC#コードであるので、
using MathWorks.MATLAB.NET.Arrays;
using MathWorks.MATLAB.NET.Utility;
using MatlabTest;
namespace TestingMatlab
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
private MatlabTest.Adding obj;
public MainWindow()
{
InitializeComponent();
}
private void btn_sum_Click(object sender, RoutedEventArgs e)
{
try
{
MWArray a;
MWArray b;
a = (MWArray)txt_num1.Text;
b = (MWArray)txt_num2.Text;
Adding obj = new Adding();
MWArray output = obj.adding((MWArray)a, (MWArray)b);
Console.WriteLine(output.ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
私は、これらは、x86用のdllであると信じています。私は、任意のCPUの代わりにそれを試みるだろう。 – msitt
@msittのお返事ありがとうございますが、x64 dllとMatlab + Visual Studioも使用しています。私のCPUはx64が選択され、x86は例外を投げた。 –
MWArrayに文字列をキャストしていることに気付きましたが、クラッシュする可能性はありません...正しいMCRバージョンがインストールされていると思いますか? – msitt