<<
>>

Создание СОМ-объекта

После создания динамической библиотеки можно приступать к созданию СОМ- объекта. Для этого следует выбрать команду File ► New в главном меню IDE Delphi и щелчком выделить значок COM Object на вкладке ActiveX открывшегося окна New Items (см.
рис. 18.1).

После щелчка на кнопке ОК в окне New Items будет запущен мастер COM Object Wizard (рис. 18.2).

Рис. 18.2. Окно мастера настройки создаваемого СОМ-объекта

? Имя класса создаваемого СОМ-объекта вводится в поле Class Name.

? Способ создания экземпляров СОМ-объекта задается с помощью раскрываю­щегося списка Instancing. В данном списке предлагаются следующие варианты:

■ Internal — объект будет использоваться в процессе;

■ Single Instance — при обращении к объекту нескольких клиентов в общем экземпляре сервера создается несколько экземпляров объекта;

■ Multiple Instance — при обращении к объекту нескольких клиентов для каж­дого клиента создается отдельный экземпляр сервера.

? Способ взаимодействия COM-сервера с клиентами задается с помощью раскры­вающегося списка Threading Model, в котором предлагаются следующие варианты:

■ Single — сервер обслуживает вызовы клиентов последовательно;

■ Apartment — вызов объекта выполняется только в одном потоке, созданном самим объектом, и сервер может поддерживать одновременную работу не­скольких объектов;

■ Free — обращение к объекту может производиться через любой созданный им поток;

■ Both — комбинация вариантов Apartment и Free.

? Стандартные COM-интерфейсы, которые будут использоваться в объекте, ука­зываются в поле Implemented Interfaces.

? Описание объекта вводится в поле Description.

? Флажок Include Type Library указывает, следует ли создавать библиотеку типов для СОМ-объекта.

? Установленный флажок Mark interface Oieautomation означает поддержку СОМ- объектом технологии OLE Automation.

В нашем примере мы зададим следующие параметры создаваемого объекта:

? имя класса — TestCom;

? способ создания экземпляров объекта — Multiple Instance;

? способ взаимодействия сервера и клиентов — Single.

Кроме того, укажем, что следует создать библиотеку типов (путем установки флаж­ка Include Type Library) и не будем включать поддержку технологии OLE Automation (оставив сброшенным флажок Mark interface Oleautomation).

После щелчка на кнопке ОК будет создан модуль, содержащий код объекта TestCom, и откроется окно библиотеки типов. В модуле объекта изначально содержатся опи­сание пустого класса объекта и вызов конструктора фабрики класса созданного объекта в секции инициализации модуля:

unit TestCOM:

interface

uses

Windows. ActiveX. Classes. ComObj. TestComServerJIB. StdVcl: type

TTestCom = class(TTypedComObject. ITestCom) protected

{Declare ITestCom methods here} end:

implementation uses ComServ; initialization

TTypedComObjectFactory.Create(ComServer. TTestCom. Class_TestCom. ciMultilnstance. tmSingle): end.

Для создания новых интерфейсов и методов COM-объекта лучше всего восполь­зоваться редактором библиотеки типов.

<< | >>
Источник: Избачков Ю. С., Петров В. Н.. Информационные системы. 2006

Еще по теме Создание СОМ-объекта:

  1. Статья 1112. Договор о создании по заказу и использование объекта права интеллектуальной собственности
  2. Статья 298. Незаконное проведение поисковых работ на объекте археологического наследия, уничтожение, разрушение или повреждение объектов культурного наследия
  3. 14.8.2. Традиция создания инструментов
  4. §10. СОЗДАНИЕ ЮРИДИЧЕСКОГО ЛИЦА
  5. Статья 87. Создание юридического лица
  6. 2. Создание и управление учреждением
  7. 14.8.1. Принцип создания инструментов
  8. Статья 153. Создание акционерного общества
  9. 2. Создание и управление фондом
  10. Создание концепции
  11. Статья 255. Создание преступной организации
  12. 5.10.1. Создание пространства для ответа
  13. Глава 1. Ты – непростое создание
  14. 5.10.2. Создание отправных пунктов
  15. 1. Возникновение (создание) юридического лица