为解决matlab 编译的exe运行有dos窗口(这样的Exe最多研发内部用),所以做了一些实验,得出以下经验。
1、生成exe:如果想生成的exe像正常软件运行,应将matlab编译器设计成vc或VS。请用 mex -setup 和 mbuild -setup 选择对应编译
用deploytool打开对话框,选择您要打包的m文件。以下是我用此方法做的exe。m文件选择 罗华飞老师的串口工具。运行后不会有dos窗口。
将会生成以下单独文件,并且可以运行:
2、matlab生成dll
同样通过deploytool并选择 .NET Assembly
这样生成spo.dll将spo.dll和MWArray.dll(此dll是matlab文件夹下的请查找)加到C#工程中,并通过C#工程的“引用”增加进去。在文件前面增加
using MathWorks.MATLAB.NET.Arrays;