Я пытаюсь скомпилировать приложение Matlab (R2010b), который использует модуль .NET, но я столкнулся с проблемой с несовместимостью между MCR и модулем .NET:MCR и .NET Несовместимость
- .NET модуль скомпилирован с Visual Studio 2010.
- MCR настроен на использование Visual Studio 2010.
- Приложение также содержит несколько файлов Mex, которые построены с помощью Visual Studio 2010, и они отлично работают как в Matlab, так и в с MCR.
Если я загрузить сборку из Matlab Cli все работы просто отлично, но когда я скомпилировать приложение и запустить его из cmd.exe выдается ошибка о том, что сборка построена с выполнением, который новее тот, который в настоящее время загружен. Я думаю, что Matlab R2010b построен с Visual Studio 2008 и считает, что это проблема, но мне интересно, есть ли у кого-нибудь решение проблемы?
От http://www.mathworks.com/help/techdoc/matlab_external/brpb5k6-1.html: «Интерфейс MATLAB поддерживает функции .NET Framework версии 2.0 и работает с версией 2.0 и совместимыми версиями (Версии 3.0 и 3.5). MATLAB поддерживает загрузку сборок Framework версии 4.0, если в вашей системе установлена версия 4.0. Однако функции версии 4.0 не были протестированы ». – Mikhail
Речь идет не о версии VS, а о том, для какой целевой структуры собираются сборки. С VS2008 и VS2010 вы можете скомпилировать для всех версий .NET, включительно более старую. Если вы не используете определенные функции .NET 4, вы можете попробовать скомпилировать .NET .NET – Mikhail
Но сборка работает нормально, если я загружаю ее из cli, поэтому я не думаю, что проблема - это несовместимые функции в .NET 4.0. – trondd