Поддерживаемые Клиент-серверные Настройки

Можно сконфигурировать MATLAB® или управлять или управляться другими COM-компонентами. Когда MATLAB управляет другим компонентом, MATLAB является клиентом, и другой компонент является сервером. Когда другой компонент управляет MATLAB, MATLAB является сервером.

Клиент-сервер MATLAB и внутрипроцессорный сервер

How the MATLAB client interacts with an in-process server.

Внутрипроцессорный сервер отсоединяет свои свойства и методы через интерфейс IDispatch (Automation) или интерфейс Custom, в зависимости от которых интерфейсов компонент реализует. Для получения информации о доступе к интерфейсам см. интерфейсы COM-объектов.

Любой COM-компонент, который был реализован как динамически подключаемая библиотека (DLL), также инстанцируют во внутрипроцессорном сервере. Таким образом, это создается в том же процессе как клиентское приложение MATLAB. Когда MATLAB использует сервер DLL, он запускается в отдельном окне, а не графическом окне MATLAB.

Чтобы узнать больше о работе с MATLAB как клиент, смотрите, Создают COM-объекты.

Клиент MATLAB и сервер из процесса

How the MATLAB client interacts with a local out-of-process server.

В этой настройке клиентское приложение MATLAB взаимодействует с компонентом, который был реализован как Локальный Сервер Из процесса. Примерами серверов из процесса является Microsoft® Excel® и программы Microsoft Word.

Как с внутрипроцессорными серверами, этот сервер отсоединяет свои свойства и методы через интерфейс IDispatch (Automation) или интерфейс Custom, в зависимости от которых интерфейсов компонент реализует. Для получения информации о доступе к интерфейсам см. интерфейсы COM-объектов.

Начиная с клиент-сервера, запущенного в отдельных процессах, у вас есть опция создания сервера в любой системе в той же сети как клиент.

Если компонент обеспечивает пользовательский интерфейс, его окно является отдельным от клиентского приложения.

Чтобы узнать больше о работе с MATLAB как клиент, смотрите, Создают COM-объекты.

Реализации COM, поддержанные MATLAB

MATLAB только поддерживает реализации COM, которые совместимы с Microsoft Active Template Library (ATL) API. В общем случае ваш COM-объект должен смочь содержаться в окне хоста ATL, чтобы работать с MATLAB.

Клиентское приложение и сервер автоматизации MATLAB

How a client application interacts with a MATLAB Automation server.

MATLAB действует в качестве Сервера автоматизации в этой настройке. Это может создать и управлять любая Microsoft Windows® программа, которая может быть контроллером Автоматизации. Некоторыми примерами контроллеров Автоматизации является Microsoft Excel, Microsoft Access™, Microsoft Project и многие Microsoft Visual Basic® и Microsoft Visual C++® программы.

Возможности Сервера автоматизации MATLAB включают способность выполнить команды в рабочем пространстве MATLAB, и получить и поместить матрицы непосредственно от и в рабочую область. Можно запустить сервер MATLAB, чтобы запуститься или в разделяемом или в специализированном режиме. У вас также есть опция выполнения его в локальной или удаленной системе.

Чтобы создать сервер MATLAB из внутренней программы приложений, используйте соответствующую функцию с того языка, чтобы инстанцировать сервера. (Например, используйте Visual Basic CreateObject функция. Для программного идентификатора, задайте matlab.application. Чтобы запустить MATLAB как выделенный сервер, используйте matlab.application.single программный идентификатор. Смотрите Разделяемые и Выделенные серверы для получения дополнительной информации.

Функция, которая создает сервер MATLAB также, возвращает указатель на свойства и методы, доступные в сервере через интерфейс IDispatch.

Примечание

Поскольку клиентские программы VBScript требуют, чтобы интерфейс Automation связался с серверами, это - единственная настройка, которая поддерживает клиент VBScript.

Для получения дополнительной информации

Чтобы узнать больше о работе с Серверами автоматизации, см. Интерфейс сервера автоматизации MATLAB COM.

Клиентское приложение и сервер MATLAB Engine

How a client application interacts with a MATLAB engine server.

MATLAB обеспечивает более быстрый пользовательский интерфейс под названием IEngine для клиентских приложений, написанных в C, C++ или Фортране. MATLAB использует IEngine связываться между клиентским приложением и движком MATLAB, запускающимся как сервер COM.

Используйте API-функции MATLAB Engine для начала и конца серверный процесс, и отправить команды, которые будут обработаны MATLAB.