exponenta event banner

закрепитель

Регистрация, отмена регистрации или запрос к 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 с параметром Запуск от имени администратора. В зависимости от параметров управления учетными записями пользователей (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 с использованием функции запуска от имени администратора приложение использует 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