我想在Matlab Builder NE中编译一些Matlab代码
在这段代码中,我想调用.NET程序集,使用Matlab内置函数来使用.NET组件:http://www.mathworks.com/help/techdoc/matlab_external/brpb58s-1.html
这个过程是这样的:
这是一个正在编译为.NET组件的Matlab代码示例,其中.NET4为目标
function ver = GetVersion()
NET.addAssembly('System');
ver = char(System.Environment.Version.ToString())};
end
然而,当编译这个简单的代码时,通过查看 ver ,我意识到它使用的是.NET 2而不是.NET 4。
当我直接从Matlab使用它时,我得到版本4 如何在已编译的DLL中控制.NET运行时版本?
答案 0 :(得分:1)
刚才我用我的电脑测试,用户mcc将 .Net 2.0 的版本设置为编译器
mcc -W 'dotnet:TestVersion,Version,2.0,private' -d 'C:\Users\HW-WIN7-TEMP\Documents\MATLAB\TestVersion\src' -T 'link:lib' -v 'class{Version:C:\Users\HW-WIN7-TEMP\Documents\MATLAB\GetVersion.m}'
我使用目标版本3.5来运行我的C#程序。获得相同的结果。
ver = GetVersion()ver = 2.0.50727.5448