3

Builder NE を使用して、R2013a を使用して MATLAB 関数を .NET dll にコンパイルしました。

dll を参照し、C# コンソール アプリから関数を正常に呼び出すことができます。

ただし、Azure Cloud Service プロジェクトを介して worker ロールで実行すると、同じコードが失敗します。アプリケーションは黙ってクラッシュし、dll のクラスを初期化する行でデバッグを停止します。[Debug Output] ウィンドウに次のメッセージが表示されます。

「プログラム '[8620] WaWorkerHost.exe: Managed (v4.0.30319)' は、コード -529697949 (0xe06d7363) 'Microsoft C++ Exception' で終了しました。」

プロジェクトのプロパティでいくつかのことを試しました。プラットフォーム ターゲットを x64 に設定します。「Visual Studio ホスティング プロセスを有効にする」のチェックを外す

開発マシンの Azure Emulator で実行する場合と、クラウド サービスの Azure ワーカー ロールにデプロイする場合の両方で失敗します。しかし、Process.Start を介して同じ dll を呼び出すコンソール アプリを実行すると、MATLAB/MCR/.Net dll が正常に呼び出されます。(MATLAB MCR をサイレント インストールするスタートアップ タスクがあります)

4

0 に答える 0