Nie_yar
@Nie_yar
Начинающий программист.

Что такое COM объект, как происходит его разработка, какие особенности реализации COM Microsoft?

Всем добрый день. Хотел бы получить краткие и понятные для новичка ответы на следующие вопросы:
1) Что такое COM объект?
2) Как происходит разработка COM объекта?
3) Какие особенности реализации COM Microsoft?
Прошу воздержаться от скидывания многостраничной литературы.
Спасибо.
  • Вопрос задан
  • 10407 просмотров
Пригласить эксперта
Ответы на вопрос 3
gbg
@gbg
Любые ответы на любые вопросы
1) Еще одна безумная инкарнация попытки микрософта по встраиванию одной программы в другую. До этого были DDE, OLE, ActiveX и прочий зоопарк. Про это даже легенды слагают.

Сначала были Windows API и DLL Hell. Революцией N1 было DDE - помните, как ссылки позволили нам создавать статусные строки, отражающие текущую цену акций Microsoft? Примерно тогда же Microsoft создала ресурс VERSION INFO, исключающий DLL Hell. Но другая группа в Microsoft нашла в DDE фатальный недостаток - его писали не они!

2) Долго, мучительно и с кучей копания в дебаггере. Спецификация COM - огромный многостраничный документ, которых вы боитесь.
3) Они были популярны в 1998 году и около того времени. Тогда даже рабочий стол форточки сделали таковым объектом. За 10 лет популярность пошла на спад, так как оказалось что кроме встраивания экселя в ворд, это все нафиг никому не надо (особенно в ТАКОМ виде), а программы могут общаться между собой не при помощи монструозного бинарного интерфейса с маршалингом, и даже не при помощи километров XML в SOAP, а гораздо более легковесными посылками и обращениями к REST API. Сейчас это чудо можно встретить разве что при работе с DirectX.
Ответ написан
@mrbaranovskyi
Это способ интерфейсного взаимодействия разработанный (я бы сказал слизанный с corba). Activex не мог быть раньше ибо это развитие ком. Предыдущий комментатор, судя по всему, опечатался.
1) ком объект это сущность класса который реализует IUnknown.
2)ну, с помощью компьютера. Слишком абстрактный вопрос. Обычно ты описываешь интерфейс и его реализацию , ну и потом дергаешь этот интерфейс. Всё достаточно просто.
3) ох уже эта молодежь. Особенности реализации описаны обычно в многостраничной литературе.
Ответ написан
Комментировать
@rukhi7
Вот здесь можно почитать разбор применения COM в DirectShow:
https://habr.com/ru/articles/738350/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы