Automation Clients

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

Типы клиентов службы автоматизации

Существует два типа клиентов службы автоматизации:

  • Клиенты, которые динамически (во время выполнения) получают сведения о свойствах и операциях сервера.

  • Клиенты, имеющие статические сведения (предоставленные во время компиляции), которые указывают свойства и операции сервера.

Клиенты первого типа получают сведения о методах и свойствах сервера, запрашивая механизм системы IDispatch OLE. Хотя это достаточно для использования динамических клиентов, IDispatch трудно использовать для статических клиентов, где управляемые объекты должны быть известны во время компиляции. Для статических привязанных клиентов классы Microsoft Foundation предоставляют класс COleDispatchDriver .

Статические привязанные клиенты используют класс прокси-сервера, который статически связан с клиентским приложением. Этот класс предоставляет инкапсуляцию свойств и операций и операций серверного приложения C++.

COleDispatchDriver Класс предоставляет основную поддержку клиентской стороны службы автоматизации. С помощью диалогового окна "Добавить новый элемент" создается класс, производный от COleDispatchDriver.

Затем вы указываете файл библиотеки типов, описывающий свойства и функции объекта серверного приложения. Диалоговое окно "Добавление элемента" считывает этот файл и создает COleDispatchDriverпроизводный класс с функциями-членами, которые приложение может вызывать для доступа к объектам серверного приложения в C++ в типобезопасном режиме. Дополнительные функциональные возможности, унаследованные от COleDispatchDriver упрощенного процесса вызова соответствующего сервера службы автоматизации.

Обработка событий в клиентах службы автоматизации

Если вы хотите обрабатывать события в клиенте автоматизации, необходимо добавить интерфейс приемника. MFC предоставляет поддержку мастера добавления интерфейсов приемника для элементов ActiveX, но не поддерживает другие COM-серверы.

См. также

Клиенты автоматизации. Использование библиотек типов
Служба автоматизации
Мастер приложений MFC