Main Content

comserver

注册、注销或查询 MATLAB COM 服务器

自 R2020a 起

说明

示例

comserver(action) 在您的用户帐户中将 MATLAB® 作为 COM 服务器注册或注销,无需管理特权。此语法等效于:

comserver('register','User','current')
comserver('unregister','User','current')

示例

comserver(action,'User','all') 为所有用户注册或注销 MATLAB。要使用此语法,您必须以管理员身份运行 MATLAB。

示例

comserver('query') 显示注册的 MATLAB COM 服务器的安装路径。

s = comserver('query') 返回包含字符向量字段的结构体:

  • User - 为当前用户帐户注册的 MATLAB 的安装路径

  • Administrator - 为所有用户注册的 MATLAB 的安装路径

示例

全部折叠

启动 MATLAB R2020a 并键入:

comserver('register')

您必须拥有管理员特权,才能为所有用户将 MATLAB 注册为 COM 服务器。

以管理员身份运行选项启动 MATLAB。根据您的用户帐户控制 (UAC) 设置,您可能需要右键点击 Windows® 命令提示符或 MATLAB 图标以选择以管理员身份运行

在 MATLAB 运行后,为所有用户注册 MATLAB:

comserver('register','User','all')

假设您的系统有 MATLAB R2019b 和 R2020a,并且您的管理员已为所有用户将 R2019b 注册为 COM 服务器。

您要将 MATLAB R2020a 与某 VBA 应用程序结合使用。启动 MATLAB R2020a 并键入:

comserver('register')

验证为您的帐户注册的 MATLAB 版本。

comserver('query')
         User: 'C:\Program Files\MATLAB\R2020a\bin\win64\MATLAB.exe'
Administrator: 'C:\Program Files\MATLAB\R2019b\bin\win64\MATLAB.exe'

MATLAB 显示注册版本的安装路径。User 的路径是 MATLAB R2020a 安装路径,因此当您启动 VBA 应用程序时,它会与 MATLAB R2020a 通信。

如果您使用以管理员身份运行启动 VBA 应用程序,则该应用程序将使用 MATLAB R2019b。

输入参数

全部折叠

注册操作,指定为下列值之一。

'register'

将此 MATLAB 注册为 COM 服务器。此操作将替换以前的注册(如果有)。

'unregister'

将 MATLAB 作为 COM 服务器注销。

如果您要使用管理员为所有用户注册的 MATLAB,请调用:

comserver('unregister','User','current')

如果您是管理员,并且想为所有用户更改 COM 服务器,您无需注销。启动您要注册的 MATLAB 版本并调用:

comserver('register','User','all')

如果您要删除为所有用户注册为 COM 服务器的 MATLAB,请调用以下语句。为单个用户帐户注册的任何 MATLAB 都不受影响。

comserver('unregister','User','all')

数据类型: char | string

替代功能

对于具有管理特权的用户,您可以从 Windows 命令提示符为所有用户注册和注销 MATLAB。有关详细信息,请参阅 matlab (Windows)。如果您的计算机上安装了多个版本的 MATLAB,最佳做法是从 matlabroot 文件夹运行 matlab 命令。要为所有用户注册 MATLAB,请键入:

matlab -batch "comserver('register','User','all')"

要为所有用户注销 MATLAB,请键入:

matlab -batch "comserver('unregister','User','all')"

注意

comserver 函数适用于 MATLAB R2020a 及更高版本。要注册以前版本的 MATLAB,请键入:

matlab -regserver
要注销,请键入:
matlab -unregserver

版本历史记录

在 R2020a 中推出