2016-06-14 3 views
1

Я пытаюсь связать некоторые данные, полученные от Matlab и приложения C#. Я пытаюсь преобразовать функцию MATLAB в сборку .NET и интегрировать ее в приложение .NET.Создайте приложение .NET с кодом MATLAB

Я начал с очень простого примера, предложенного из документации по mathWorks по этой ссылке (http://uk.mathworks.com/help/compiler_sdk/gs/create-a-cc-application-with-matlab-code-1.html), и я выполнил все представленные шаги. После выполнения всего шага учебника и добавления ссылки на мою сборку, созданную через компилятор библиотеки Matlab и ссылку на API MWArray, когда я отлаживаю приложение, возникает исключение, когда я пытаюсь создать экземпляр класс, который я создал с помощью компилятора библиотеки Matlab.

Исключением является следующее:

"An unhandled exception of type 'System.TypeInitializationException' occurred in MainApp.exe"

Я установил Matlab время выполнения версии 9.0 в соответствии с требованиями readme.txt и я бегу код на 8.1 ОС Windows 64bit на MwareFusion (Virtual Machine) на Mac.

ответ

0

Я просмотрел код и учебник. Я повторил те же шаги на моей машине, и я понял проблему. По существу, если вы перейдете через внутренние исключения, вы можете обнаружить, что конструктор с ошибкой исключение:

Exception form HRESULT: 0x8007000B

Это может быть вызвано тем, что Matlab создает DLL, которые будут работать на 64 бита, в то время как, используя конфигурация по умолчанию, Visual Studio компилируется с 32 битами.

Поэтому я предлагаю изменить цель вашего приложения в меню Configuration Menager из любого CPU на x64. Это должно решить проблему.