Matlab中的actxserver运用

创建 COM 服务器

语法

c = actxserver(progid)

c = actxserver(progid,Name,Value)

说明

示例

c = actxserver(progid) 创建一个本地 OLE 自动化服务器,其中 progid 是与 OLE 兼容的 COM 服务器的编程标识符 (ProgID)。返回服务器的默认接口的句柄。

c = actxserver(progid,Name,Value) 使用名称-值对组参数创建一个服务器。

示例

全部折叠

ActivePrinter 属性

创建一个 Microsoft® Excel® 对象并显示 ActivePrinter 属性。MATLAB® 将显示与您的系统对应的值。

e = actxserver('Excel.Application');
get(e,'ActivePrinter')
ans = \\printers\Copy-Fl2-South on Ne04:

使用应用程序完成工作后,在 MATLAB 中关闭 Excel 并删除服务器对象。

Quit(e)
delete(e)

输入参数

全部折叠

progid - 编程标识符

字符向量

编程标识符,指定为字符向量。控件或服务器供应商文档中指定了 ProgID。要查看 MATLAB progid 值,请参阅Programmatic Identifiers。

示例: 'Matlab.Application'

名称-值对组参数

示例: 'machine','mymachine'

全部折叠

'machineName' - 远程计算机

字符向量

要在其上启动服务器的远程计算机的名称,指定为字符向量。

'interfaceName' - 接口名称

字符向量

COM 对象的接口名称,指定为字符向量。interfaceName 的值包括:

  • 自定义接口名称 - 必须知道接口的名称,还需要有服务器供应商的文档。有关自定义 COM 服务器和接口的信息,请参阅COM Server Types。

  • IUnknown - 使用 IUnknown 接口。MATLAB 不支持在 64 位 MATLAB 版本中使用 IUnknown 接口。

输出参数

全部折叠

c - COM 对象

函数句柄

COM 对象,以函数句柄形式返回。

局限性

  • COM 函数只可以在 Microsoft Windows® 系统中使用。

  • 64 位 MATLAB 不支持 IUnknown 接口。

  • MATLAB COM 接口不支持调用具有可选参数的函数。

提示

  • 对于在动态链接库 (DLL) 中实施的组件,actxserver 创建进程内服务器。对于作为可执行文件 (EXE) 实施的组件,actxserver 创建进程外服务器。可以在支持 DCOM 的网络中的客户端系统或任何其他系统上创建进程外服务器。

  • 如果此控件实现了任何自定义接口,则可以使用 interfaces 函数列出这些接口,而使用 invoke 函数访问选定的接口。

  • 可以注册 COM 服务器的事件。有关详细信息,请参阅 COM Events。