目录
com方式调用matlab(一) com方式调用matlab(二) com方式调用matlab(三) com方式调用matlab(四) com方式调用matlab(五)
com方式调用matlab(六)
com方式调用matlab(附:运行结果及代码) 虽然说已经有很多的文章介绍如何在matlab下面将m文件封装为com组件,但是这里为了保障完整性,这里还是把过程详细描述一下.
1、 编写m文件。
打开Matlab6,依次选择File->New->M-File,创建一个M文件,并键入如下信息:

测试可运行后,保存并关闭。这里保存得文件名为draw2D.m。回到主界面。
2、 生成组件
在主界面中键入如下命令并回车:
Comtool

此时进入组件创建界面。
此时,在菜单中依次选择File->New Project…。

则进入组件配置界面。参照下图进行配置。
其中Component name为组件名称。在这里命名为c1。
以前的Classes处会自动填入“c1”。这里我们选中c1点Remove将原名称移除,并在Class name中填入“Draw2D”,点Add>>。
Project directory为组件的保存路径。
Compile code in选项选择C++。
Compiler options中按照如图进行钩选。
点OK。这样就创建好了一个组件的配置。

点ok回到组建创建界面。
然后选中Draw2D,依次在菜单上选择Project->Add File…引入刚才编写的m文件。


点“打开”,这样就在组件中引入了m文件。
然后回到组件创建界面,依次选择菜单中的Build->Com Object。

因为可能要在没有安装matlab的电脑上面搭建环境,所以这里我们顺便打个包,为搭建环境进行准备。依次选择菜单上面的Component->Package Component。
在步骤2的最后,我们看一下文件的输出结果。
在c1的工作目录中看到这样一些文件。

其中文件夹src里面是在编写c++程序中能够引入的头文件和接口定义文件、类定义文件等文件。Distrib中是生成的组件组件文件。首先看一下distrib 文件夹。
C1.exe为打包文件,用于进行环境搭建。C1_1_0.dll是构建的组件库文件。其他文件我们不用关心。
我们在再一下src文件夹。里面包含很多文件。

这里我们只关心c1_idl_i.c和c1_com.cpp文件,因为其中包含了我们需要的组件的GUID、接口的RIID以及方法的定义。至于配置文件的内容定义等方面的内容将放到下一部分说明。
posted on 2006-08-10 20:59
littlegai 阅读(907)
评论(0) 编辑 收藏 引用 所属分类:
我的代码玩具