Поделиться через


Части приложения COM+

Приложения COM+ состоят из одного или нескольких COM-компонентов.

В документации COM+ используются следующие термины:

COM-компонент

Двоичная единица кода, создающая COM-объекты (включая код упаковки и регистрации).

COM-объект

Экземпляр класса COM.

КЛАСС COM

Именованной, конкретной реализации одного или нескольких интерфейсов. Класс COM определяется CLSID (иногда с помощью ProgID).

COM-интерфейс

Группа связанных функций метода, предоставляемых классом COM, указывающим контракт. К ним относятся имя, сигнатура интерфейса, семантика интерфейса и формат буфера маршалинга. Интерфейс определяется iiD. Синтаксис интерфейса определяется в библиотеках IDL и/или типов. Интерфейсы класса COM должны быть разделены на управляемые, сплоченные наборы методов.

Интерфейсы COM неизменяемы; Контракт COM указывает, что они не могут быть изменены. Для любого изменения (например, добавления методов) требуется определение нового интерфейса.

Метод COM

Один из наборов связанных функций, предоставляемых интерфейсом COM.

Настроенные и не настроенные компоненты

Чтобы воспользоваться преимуществами служб, которые поддерживают приложения COM+, среда COM+ предъявляет определенные требования к компонентам COM, созданным для приложений COM+. При добавлении в приложение COM+ компонент COM называется настроенным компонентом.

КОМПОНЕНТЫ COM, созданные для приложений COM+, являются компонентами сервера внутри процесса. Компонент должен содержать библиотеку типов (TLB-файл), чтобы описать все классы, реализованные в компоненте, и объявить интерфейсы для всех классов компонента. Эти компоненты можно создавать и реализовывать с помощью Microsoft Visual Basic, Microsoft Visual C++или любого средства разработки, совместимого с COM.

Ненастройанный компонент — это компонент , который не установлен в приложении COM+. Большинство ненастроенных компонентов можно преобразовать в настроенные компоненты, просто интегрируя их в приложение COM+.

Примечание.

Не используйте один и тот же идентификатор AppID как для приложения COM+, так и в реестре для ненастроенного компонента. При активации ненастроированного компонента, так как активация может получить сведения о приложении COM+ из реестра, который не содержит сведения, необходимые для активации COM. Аналогичные проблемы могут возникнуть, если вызов в CoRegisterClassObject из DllHost, на котором размещено приложение COM+ Server.