Я использую MATLAB Builder NE для создания некоторых функций MATLAB в сборке.NET и вызывать их из С#. Затем я столкнулся с этой ошибкой:
-----------------------------------Ошибка-------------- -----------------
... MWMCR :: EvaluateFunction error...
Неопределенная функция ' mwltelibrary ' для входных аргументов типа 'cell'.
Ошибка в => Testfunction.m в строке 62.
... Matlab M-code Stack Trace...
в файле C:\Users\Owner\AppData\Local\Temp\Owner\mcrCache8.3\Test\toolbox\lte\lte\lteTBS.m, имя lteTBS, строка 37.
в файле C:\Users\Owner\AppData\Local\Temp\Owner\mcrCache8.3\Test\Testfunction.m, имя Testfunction, строка 62.
-----------------------------------КОНЕЦ-------------- -------------------
В строке 62 функции Testfunction.m эта функция вызывает функцию lteTBS от lteTBS.m, которая предоставляется MathWork. Собственно, этот файл.m написан моим коллегой, и я ничего не знаю о Matlab. Если я запустил эту функцию в командном окне Matlab (R2014a 32bit в Windows 8.1 pro 64bit), он работает.
Я проверил эту машину и все последующие компоненты были установлены.
MATLAB, MATLAB Builder NE, компилятор MATLAB, панель инструментов системы связи, панель инструментов DSP, панель инструментов системы LTE, панель инструментов обработки сигналов
Любая помощь высоко ценится.
Некоторые обновления:
Я попытался вызвать еще один LTE api и получил эту ошибку: LTE System Toolbox не поддерживает развернутый режим.
Я также связался с техническим сторонником MathWorks, и он сказал, что LTE System Toolbox не может быть развернута таким образом.
Вот мой способ: запустить приложение MATLAB с некоторыми параметрами с помощью System.Diagnostics.Process.
Если MATLAB не установлен на локальном компьютере, он должен отправить запрос на сервер с установленным MATLAB.
Вы можете найти полезную информацию из этой публикации в форуме MathWorks.
mccExcludedFiles.log
сгенерированный компилятором MATLAB, чтобы увидеть, была ли ваша функция включена в развертывание для начала.