Вход


Главная страница >> Учебный процесс >> Конспекты >> Delphi. Поддержка технологий COM >> COM-объекты и фабрика классов >> Классы TComObject и TComObjectFactory

[Назад]    [Содержание ]    [Вперед]

  


Классы TComObject и TComObjectFactory


В Delphi существует два класса, которые инкапсулируют СОМ-объекты и фабрики классов, называемые соответственно TComObject и TComObjectFactory. Класс TComObject содержит необходимую инфраструктуру для поддержки интерфейса IUnknown и создания объектов из класса TComObjectFactory. Подобным образом класс TComObjectFactory поддерживает интерфейс IClassFactory и "умеет" создавать объекты TComObject. Проще всего генерировать СОМ-объект с помощью СОМ Object Wizard (мастер СОМ-объекта), расположенного во вкладке ActiveX диалогового окна New Items. В листинге 23.1 приведен псевдокод, сгенерированный этим мастером.

Потомок класса TComServer объявляется и реализуется подобно большинству VCL-классов.

Параметры, переданные конструктору Create() компонента TComObjectFactory, связывают этот потомок класса TComServer с соответствующим объектом TComObjectFactory. Первый параметр конструктора ? объект TComServer. Этот параметр практически всегда будет принимать значение глобального объекта ComServer, определенного в модуле ComServ. Второй параметр типа TComObject вы связываете с фабрикой, а третий параметр ? это CLSID СОМ-класса TComObject Четвертый и пятый параметры ? это строки имени и описания класса, используемые для опиcания СОМ-класса в системном реестре операционной системы.

Экземпляр класса TComObjectFactory создается в модуле инициализации; при этом фабрика класса будет доступна для создания экземпляра СОМ-объекта после загрузки СОМ-сервера. 3агрузка СОМ-сервера зависит от его типа? внутренний ли это сервер (DLL) или внешний (приложение).



[Назад]    [Содержание ]    [Вперед]

  


  
За содержание страницы отвечает Гончарова М.Н.
©
Кафедра СПиКБ, 2002-2017