主要内容

MATLABCOM集成

概念和术语

虽然COM技术背后的思想是直截了当的,但术语却不是。COM术语的含义随着时间的推移发生了变化,很少有简明的定义存在。这里有一些你应该熟悉的术语。这些都不是全面的定义。要获得COM的完整描述,您需要查阅外部资源。

COM对象、客户端和服务器

一个COM对象是一个符合组件对象模型的软件组件。COM强制封装对象,防止直接访问其数据和实现。COM对象公开由属性、方法和事件组成的接口。

一个COM客户端是一个使用COM对象的程序。公开功能以供使用的COM对象称为COM服务器.COM服务器可以在进程内,也可以在进程外。进程外服务器的一个例子是微软®Excel®电子表格程序。

MATLAB®既可以用作COM客户端,也可以用作COM自动化服务器。

接口

组件的功能是由一个或多个接口定义的。要使用COM组件,必须了解它的接口,以及组件实现的方法、属性和事件。组件供应商提供这些信息。

标准COM接口有两种:

  • IUnknown—所有COM组件都需要的接口。所有其他COM接口都派生自IUnknown

  • IDispatch—向支持自动化的应用程序公开对象、方法和属性的接口。金宝app

MATLABCOM客户端

COM客户端是一个操作COM对象的程序。这些对象可以在MATLAB应用程序中运行,也可以是另一个应用程序的一部分,该应用程序将其对象作为编程接口公开给该应用程序。

使用MATLAB作为COM客户端提供了两种在MATLAB中开发程序的技术:

  • 您可以在MATLAB应用程序中包含COM组件(例如,电子表格)。

  • 您可以通过Automation访问公开对象的现有应用程序。

MATLAB COM客户端可以访问支持自动化的应用程序,例如Excel电子表格程序。金宝appMATLAB创建了一个自动化服务器,在其中运行应用程序,并将句柄返回给所创建对象的主接口。

MATLABCOM自动化服务器

自动化提供了一种基础结构,通过该基础结构,被称为自动化控制器的应用程序可以访问和操作(即设置属性或调用方法)由其他被称为自动化服务器的应用程序导出的共享自动化对象。任何窗口®程序可以配置为自动化控制器,可以控制MATLAB。

例如,使用微软Visual Basic®编程语言,可以在MATLAB脚本中运行微软演示文稿®演示。在本例中,PowerPoint是控制器,MATLAB是服务器。

相关的话题