ClassName |
Имя класса Delphi, реализующего COM-сервер. Мастер создаст заготовку
класса с этим именем, под которым COM-сервер также будет зарегистрирован
в реестре. |
Instansing |
Определяет режим создания COM-объектов. Параметр может принимать следующие
значения:
Internal
|
— объект может использоваться только внутри этого приложения;
|
Single Instance |
— создание каждого экземпляра объекта приводит к запуску нового
экземпляра приложения-сервера. После создания объекта «фабрика объектов»
приложения удаляет информацию о себе из системного списка зарегистрированных
«фабрик», что заставляет COM при создании нового объекта запустить
приложение-сервер в новом процессе;
|
Multiple Instance
|
после создания экземпляра объекта «фабрика» не удаляет себя из
списка зарегистрированных. При создании запросе на создание нового
объекта COM обнаружит ее в этом списке и запросит создание у той
же «фабрики» — при этом новый экземпляр объекта будет создан в том
же приложении. Другими словами, для создания всех объектов данного
типа будет запущено не более одного экземпляра сервера.
|
Этот параметр имеет смысл только для EXE-серверов, для DLL он игнорируется.
|
Threading Model |
Потоковая модель сервера. Действие этого параметра зависит от типа сервера
(EXE или DLL):
Single |
— нет никакой поддержки потоков. Для DLL-сервера при регистрации
не будет создан параметр ThreadingModel. Для EXE-сервера указание
этого параметра (в отличие от любого другого) не приведет к установке
флага IsMultiThread, а будет создана STA. Обычно эта модель используется
для Internal-серверов; |
Apartment |
— для DLL-сервера в реестре будет создан параметр ThreadingModel=
Apartment, для EXE — создана STA; |
Free |
— для DLL-сервера в реестре будет создан параметр ThreadingModel=
Free, для EXE — создана MTA; |
Both |
— для DLL-сервера в реестре будет создан параметр ThreadingModel=
Both, для EXE — создана MTA. |
|
Include Type Library |
Установка этого флажка приводит к включению в сервер библиотеки типов
— специального двоичного ресурса, описывающего реализуемые сервером интерфейсы,
их методы и параметры вызова. COM предоставляет стандартные средства работы
с библиотеками типов. В частности, Delphi может импортировать имеющуюся
в сервере библиотеку типов и автоматически построить по ней интерфейсный
модуль для работы с ним. При использовании библиотеки типов интерфейсы описываются
при помощи Type Library Editor. Объект наследуется от TTypedComObject Если
этот флажок выключен, то объект наследуется от TComObject. Это более «легковесная»
реализация сервера. |
Description |
Примечание к объекту. |
Implemented Interfaces |
Это поле разрешено, только если объект не использует библиотеку типов.
В таком случае вы должны сами описать интерфейсы в коде своей программы
и перечислить их в этом поле, например «ITest, IAnotherTest». |
Mark interface Oleautomation |
Установка этого флага делает COM-сервер совместимым с OLE Automation.
Вы должны использовать в методах интерфейса только совместимые с OLE Automation
типы данных. Это необходимо, если вы хотите передавать ссылку на интерфейс
между разными «комнатами». Такая операция, называемая маршалингом интерфейсов,
требует написания специальной proxy/stub-DLL. Однако если интерфейс помечен
как OleAutomation, то эту работу выполнит маршалер OLE, что избавит вас
от лишней работы. |