MATLAB COM- Интегрирования

Концепции и терминология

Хотя идеи, лежащие в основе COM-технологии, являются простыми, терминология не имеет значения. Значение COM-терминов со временем изменилось, и существует мало кратких определений. Вот некоторые термины, с которыми вы должны ознакомиться. Они не являются исчерпывающими определениями. Для получения полного описания COM необходимо проконсультироваться с внешними ресурсами.

COM-объекты, клиенты и серверы

COM- object является программным компонентом, который соответствует объектной модели программных компонентов. COM обеспечивает инкапсуляцию объекта, препятствуя прямому доступу к его данным и реализации. COM-объекты открывают интерфейсы, которые состоят из свойств, методов и событий.

COM- client является программой, которая использует COM-объекты. COM-объекты, которые предоставляют функциональность для использования, называются COM- servers. COM-серверы могут быть в процессе или вне процесса. Пример непроцессного сервера - Microsoft® Excel® программа для электронных таблиц.

MATLAB® может использоваться как COM-клиент, так и COM-сервер автоматизации.

Интерфейсы

Функциональность компонента определяется одним или несколькими интерфейсами. Чтобы использовать COM-компонент, необходимо узнать о его интерфейсах, методах, свойствах и событиях, реализованных компонентом. Поставщик компонентов предоставляет эту информацию.

Существует два стандартных COM-интерфейса:

  • IUnknown - интерфейс, требуемый для всех компонентов. Все другие COM-интерфейсы получают из IUnknown.

  • IDispatch - интерфейс, который предоставляет объекты, методы и свойства приложениям, поддерживающим автоматизацию.

COM-клиент MATLAB

COM-клиент является программой, которая манипулирует COM-объектами. Эти объекты могут запускаться в приложении MATLAB или могут быть частью другого приложения, которое представляет свои объекты как программный интерфейс приложению.

Использование MATLAB в качестве COM-клиента предоставляет два метода разработки программ в MATLAB:

  • Можно включать COM- компонентов в приложение MATLAB (для примера - электронную таблицу).

  • Вы можете получить доступ к существующим приложениям, которые открывают объекты через Автоматизацию.

Клиенты MATLAB COM могут получить доступ к приложениям, поддерживающим автоматизацию, таким как программа для электронных таблиц Excel. MATLAB создает сервер автоматизации, в котором можно запустить приложение, и возвращает указатель на основной интерфейс для созданного объекта.

MATLAB COM-сервер автоматизации

Automation предоставляет инфраструктуру, в которой приложения, называемые контроллерами автоматизации, могут получать доступ к общим объектам автоматизации, экспортируемым другими приложениями, называемыми серверами автоматизации, и управлять ими (то есть устанавливать свойства или вызывать методы). Любые окна® программа, которая может быть сконфигурирована как контроллер автоматизации, может управлять MATLAB.

Например, использование Microsoft Visual Basic® язык программирования, можно запустить скрипт MATLAB в Microsoft PowerPoint® презентация. В этом случае PowerPoint является контроллером, а MATLAB является сервером.

Похожие темы