为解决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;
using MathWorks.MATLAB.NET.Utility;
using spo;//您的dll名。

本文介绍了如何使用C#调用MATLAB编译的DLL来创建无DOS窗口的图形界面应用程序。通过设置MATLAB编译器为VC或VS,使用deploytool打包M文件并生成DLL。在C#工程中引入MATLAB的MWArray.dll和自定义DLL,利用MathWorks.MATLAB.NET.Arrays等命名空间进行交互,实现实时数据处理和波形绘制。


被折叠的 条评论
为什么被折叠?



