Создание COM-объектов

Используйте actxserver функция, чтобы создать внутрипроцессорный сервер для компонента динамически подключаемой библиотеки (DLL) или сервер из процесса для исполняемого файла (EXE) компонент.

Инстанцируйте компонента DLL

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

Синтаксис для actxserver, когда используется с компонентом DLL, actxserver(ProgID), где ProgID программный идентификатор для компонента.

actxserver возвращает указатель на первичный интерфейс к объекту. Используйте этот указатель, чтобы сослаться на объект в других вызовах функции COM. Можно также использовать указатель, чтобы получить больше интерфейсов к объекту. Для получения дополнительной информации об использовании интерфейсов см. интерфейсы COM-объектов.

В отличие от средств управления Microsoft® ActiveX®, любой пользовательский интерфейс, отображенный сервером, появляется в отдельном окне.

Вы не можете использовать 32-битный незавершенный COM-объект DLL в 64-битном приложении MATLAB. Для получения информации об этом ограничении смотрите, Почему я не могут использовать 32-битные COM-объекты DLL в 64-битном MATLAB?.

Инстанцируйте компонента EXE

Можно использовать actxserver функция, чтобы создать сервер для компонента, реализованного как исполняемый файл (EXE). В этом случае MATLAB инстанцирует компонента в сервере из процесса.

Синтаксис для actxserver создать исполняемый файл - actxserver(ProgID, sysname). ProgID программный идентификатор для компонента и sysname дополнительный аргумент, используемый в конфигурировании распределенного COM (DCOM) система.

actxserver возвращает указатель на первичный интерфейс к COM-объекту. Используйте этот указатель, чтобы сослаться на объект в других вызовах функции COM. Можно также использовать указатель, чтобы получить больше интерфейсов к объекту. Для получения дополнительной информации об использовании интерфейсов см. интерфейсы COM-объектов.

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

Этот пример создает серверное приложение COM, запускающее программу электронной таблицы Microsoft Excel®. Указатель присвоен h.

h = actxserver('Excel.Application')

Отображения MATLAB:

h =
    COM.excel.application

MATLAB может программно соединиться с экземпляром приложения Сервера автоматизации COM, которое уже работает на вашем компьютере. Чтобы получить ссылку на такое приложение, используйте actxGetRunningServer функция.

Этот пример получает ссылку на программу Excel, которая должна уже работать на вашей системе. Возвращенный указатель присвоен h.

h = actxGetRunningServer('Excel.Application')

Отображения MATLAB:

h =
    COM.excel.application

Смотрите также

|