COM (объектная модель компонентов) - это стандарт от компании Microsoft, описывающий механизмы взаимодействия программных компонентов. Компонент в COM предоставляет набор программных интерфейсов. Использование метки для вопросов по разработке и использованию COM-компонентов. Для работы с последовательным портом используйте метку [com-порт].

COM (объектная модель компонентов) - это стандарт от компании Microsoft, описывающий механизмы взаимодействия программных компонентов. Компонент в COM предоставляет набор программных интерфейсов. Для описания интерфейсов предоставляется специальный язык Язык определения интерфейса . COM предоставляет возможность одновременного использования компонентов, соответствующих программам, и корректирует освобождение ресурсов путем ведения счетчика ссылок (счетчик ссылок). Microsoft является OLE Automation, ActiveX, DCOM, COM +, DirectX и др. Стандарт является платформо-независимым, но на практике распространен только в ОС Windows.

Технология COM основана на принципах объектно-ориентированного программирования, но для ее программных реализаций можно использовать любые языки, поддерживающие указатели на структуры и (явный или неявный) вызов функций по указателям. Чаще всего для реализации компонентов используется C ++ (компилятор Visual C ++ поддерживает расширение языка, позволяющее упростить разработку COM-компонентов). Управляемый код может взаимодействовать с COM-компонентами с помощью технологий COM Interop . COM-объекты могут быть зарегистрированы в реестре (для используемого GUID), либо без регистрации (метаданные из манифеста библиотеки).

Основные понятия

COM-сервер - компонент, используемый другими приложениями. Используются COM-клиенты.
Интерфейс - набор компонентов, с помощью которых он взаимодействует с другими программами.
Класс - конкретная реализация одного или нескольких интерфейсов. COM-классы идентифицируются с помощью глобального идентификатора (CLSID).
Библиотека типов - набор интерфейсов, классов и других COM-элементов с их метаданными, скомпилированные в бинарный файл (* .tlb).

Ссылки

Описание Компонент Объектная Модель
Справочник по программированию COM
Использование COM-компонентов в управляемом коде
COM в Delphi