用MATLAB代码创建.NET类库

MATLAB中可以使用库编译器和mcc命令两种方式将MATLAB代码编译为.NET类库,下面分别进行介绍。[大谦MATLAB,dqmatlab点com]

使用库编译器创建.NET类库

在MATLAB命令窗口键入

code.matlab
>> libraryCompiler

打开库编译器。在工具栏中的“TYPE”列表框中选择“.NET Assembly”选项并进行其它设置,可以生成.NET类库。

使用命令行创建.NET类库

也可以用mcc命令创建.NET类库。下面是mcc命令的完整语法格式。

.NET类库只有一个类的情况:

code.matlab
mcc -W dotnet:assembly_name,className,framework_version,security,
      remote_type -T link:lib options mfilename1 mfilename2...mfilenameN

下面介绍语法的各个部分。

-W:让编译器创建一个打包器函数。该选项带一个字符串参数,指定组件的某些特性,如表3-1中所示。

表3-1 –W字符串参数及其描述

-W 字符串参数 描 述
dotnet: 该关键字告诉编译器要创建的组件的类型,后面跟一冒号,指定创建一个.NET组件
assembly_name 指定组件名称及其名字空间,名字空间是一个句号间隔的列表,如 componentname.groupname.component
className 指定.NET类的名称
framework_version 指定将用于编译组件的.NET框架的版本。可以指定下面两个值中的一个: – 使用目标机器上最近支持的版本 主版本号.次版本号 – 使用指定版本
security 指定创建的组件是私有集还是共享集。创建私有类库时,指定Private;创建共享类库时,指定用于给类库签名的密匙文件的完整路径
remote_type 指定类库的远程处理类型,值为remote和local
code.matlab
mfilename1 [mfilename2…mfilenameN]

指定M文件或即将作为要创建的类的方法的M文件。

-T

指定输出类型。要创建.NET类库,需要指定关键字link:lib,它将对象链接到共享库(DLL)中。

使用名为dotnet的编译器捆绑文件,可以简化用于创建.NET类库的命令行,使得创建.NET类库更简单。

.NET类库有多个类的情况:

code.matlab
mcc -W dotnet:assembly_name,className,framework_version,security,remote_type -T link:lib
         options class{className:mfilename1 mfilename2...mfilenameN}

语法中各参数的意义与上面的相同,不同的是可以指定多个类。