exponenta event banner

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

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

Компонент DLL экземпляра

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

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

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

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

Невозможно использовать 32-разрядный объект DLL COM в процессе в 64-разрядном приложении MATLAB. Сведения об этом ограничении см. в разделе Почему я не могу использовать 32-разрядные объекты DLL COM в 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 Automation, который уже запущен на компьютере. Чтобы получить ссылку на такое приложение, используйте actxGetRunningServer функция.

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

h = actxGetRunningServer('Excel.Application')

MATLAB отображает:

h =
    COM.excel.application

См. также

|