comserver

Регистрация, отмена регистрации или запрос COM-сервера MATLAB

Описание

пример

comserver(action) регистрирует или отменяет регистрацию MATLAB® как COM-сервер в учетной записи пользователя без необходимости в административных привилегиях. Этот синтаксис эквивалентен:

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

пример

comserver(action,'User','all') регистрирует или отменяет регистрацию MATLAB для всех пользователей. Чтобы использовать этот синтаксис, необходимо запустить MATLAB в качестве администратора.

пример

comserver('query') отображает пути установки зарегистрированных COM-серверов MATLAB.

s = comserver('query') возвращает структуру с символьными векторными полями:

  • User - Путь установки MATLAB, зарегистрированный для учетной записи текущего пользователя

  • Administrator - Путь установки MATLAB зарегистрирован для всех пользователей

Примеры

свернуть все

Запустите R2020a MATLAB и введите:

comserver('register')

Для регистрации MATLAB в качестве COM-сервера для всех пользователей необходимо иметь права администратора.

Запустите MATLAB с опцией Run as administrator. На основе настроек управления учетными записями пользователей (UAC) может потребоваться щелкнуть правой кнопкой мыши Windows® Командная строка или значок MATLAB, чтобы выбрать Run as administrator.

После запуска MATLAB зарегистрируйте MATLAB для всех пользователей:

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

Предположим, что в системе есть R2019b и R2020a MATLAB, а администратор зарегистрирован R2019b как COM-сервер для всех пользователей.

Вы хотите использовать R2020a MATLAB с приложением 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 является установкой R2020a MATLAB, поэтому, когда вы запускаете приложение VBA, оно общается с R2020a MATLAB.

Если вы запускаете приложение VBA с помощью Run as administrator, то приложение использует R2019b MATLAB.

Входные параметры

свернуть все

Действие регистрации, заданное как одно из следующих значений.

'register'

Зарегистрируйте этот MATLAB как COM-сервер. Это действие заменяет предыдущую регистрацию, если она имеется.

'unregister'

Отмена регистрации MATLAB как COM-сервера.

Если необходимо использовать MATLAB, зарегистрированный администратором для всех пользователей, вызовите:

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

Если вы являетесь администратором и хотите изменить COM-сервер для всех пользователей, отменять регистрацию не требуется. Запустите версию MATLAB, которую вы хотите зарегистрировать, и вызовите:

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

Если необходимо удалить MATLAB, зарегистрированный как COM-сервер для всех пользователей, вызовите этот оператора. Любой MATLAB, зарегистрированный для учетных записей отдельных пользователей, не влияет.

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

Типы данных: char | string

Альтернативная функциональность

Для пользователей с правами администратора можно зарегистрировать и отменить регистрацию MATLAB для всех пользователей из командной строки Windows. Для получения дополнительной информации см. matlab (Windows). Если на компьютере установлено несколько версий MATLAB, лучшая практика необходимо запустить matlab команду из matlabroot папка. Чтобы зарегистрировать MATLAB для всех пользователей, введите:

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

Чтобы отменить регистрацию MATLAB для всех пользователей, введите:

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

Примечание

comserver функция доступна для MATLAB R2020a и более поздних версий. Для регистрации предыдущих версий MATLAB введите:

matlab -regserver
Для отмены регистрации введите:
matlab -unregserver

Введенный в R2020a