Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Purpose
COM — это независимая от платформы распределенная объектно-ориентированная система для создания двоичных компонентов программного обеспечения, которые могут взаимодействовать. COM — это базовая технология для технологий OLE Microsoft (составных документов) и ActiveX (компонентов с поддержкой Интернета).
Tip
Современный C++ и COM: Если вы пишете новый код на C++, использующий COM-интерфейсы, отдавайте предпочтение обёрткам умных указателей вместо непосредственных вызовов AddRef/Release:
| Approach | Когда использовать | Header |
|---|---|---|
C++/WinRTwinrt::com_ptr<T> |
Новый среда выполнения Windows или классический COM-код |
<winrt/base.h> (проекция C++/WinRT) |
WRLMicrosoft::WRL::ComPtr<T> |
Существующие базы кода, классическая COM, без зависимостей C++/WinRT | <wrl/client.h> |
Необработанный COM (AddRef/Release) |
Низкоуровневые библиотеки, границы ABI, реализации COM-сервера | <unknwn.h> |
Интеллектуальные указатели устраняют наиболее распространенные ошибки COM: утечка ссылок, двойной выпуск и использование после выпуска. Дополнительные сведения см. в разделе "Управление временем существования объектов с помощью подсчета ссылок ".
Где применимо
COM-объекты можно создавать с различными языками программирования. Объектно-ориентированные языки, такие как C++, предоставляют механизмы программирования, упрощающие реализацию COM-объектов. Эти объекты могут находиться в одном процессе в других процессах даже на удаленных компьютерах.
Требования времени выполнения
Сведения о том, какие операционные системы требуются для использования определенного интерфейса или функции, см. в разделе "Требования" документации по интерфейсу или функции.
В этом разделе
| Тема | Description |
|---|---|
|
Основы COM |
Описывает основные понятия и справочник по программированию. |
|
OLE и передача данных |
Описывает составные документы и передачу данных. |
|
Элементы управления и страницы свойств |
Описывает элементы управления ActiveX и страницы свойств. |
|
Перевод на язык COM |
Описывает различия между языками программирования и описание перевода синтаксиса com-объектов с одного языка на другой. |
Связанная документация
| Тема | Description |
|---|---|
|
Основы COM |
Описывает основные понятия и справочник по программированию. |
|
OLE и передача данных |
Описывает составные документы и передачу данных. |
|
Элементы управления и страницы свойств |
Описывает элементы управления ActiveX и страницы свойств. |
|
Перевод на язык COM |
Описывает различия между языками программирования и описание перевода синтаксиса com-объектов с одного языка на другой. |
Связанные темы
| Тема | Description |
|---|---|
|
Объектная модель компонента (COM) |
COM — это независимая от платформы распределенная объектно-ориентированная система для создания двоичных компонентов программного обеспечения, которые могут взаимодействовать. COM — это базовая технология для технологий OLE Microsoft (составных документов) и ActiveX (компонентов с поддержкой Интернета). |
|
Автоматизация |
Автоматизация позволяет пакетам программного обеспечения предоставлять свои уникальные возможности средствам сценариев и другим приложениям. Автоматизация использует объектную модель компонента (COM), но может быть реализована независимо от других функций OLE, таких как активация на месте. |
|
язык определения интерфейса Microsoft (MIDL) |
Язык определения интерфейса Microsoft (MIDL) определяет интерфейсы между клиентскими и серверными программами. Microsoft включает компилятор MIDL с пакетом SDK для платформы, чтобы разработчики могли создавать файлы языка определения интерфейса (IDL) и файлы конфигурации приложений (ACF), необходимые для интерфейсов удаленного вызова процедур (RPC) и интерфейсов COM/DCOM. MIDL также поддерживает создание библиотек типов для автоматизации OLE. |
|
Структурированное хранилище |
Структурированное хранилище обеспечивает сохранение файлов и данных в COM путем обработки одного файла в виде структурированной коллекции объектов, известных как хранилища и потоки. |
|
COM+ |
COM+ является развитием объектной модели компонентов Microsoft (COM) и Microsoft Transaction Server (MTS). COM+ создает и расширяет приложения, написанные с помощью COM, JSON и других технологий на основе COM. |