COM-компонент может использоваться в платформах кроме окон?

Я хотел знать, является ли этим возможный использовать COM-компонент в других платформах как Linux, и т.д.,

Мой вопрос состоит в том, что COM-компонент, как предполагается, регистрируется в OS & For, что ОС нужно что-то как реестр так, чтобы клиент мог использовать COM-компоненты.

Кто-либо может пролить свет на мой вопрос?

1
задан Kate Gregory 3 July 2010 в 18:06
поделиться

4 ответа

С технической точки зрения, COM - это просто архитектура, которая может быть реализована на любой платформе. Например, поиск зарегистрированных классов в реестре - это то, что вы могли бы аналогичным образом реализовать на любой другой платформе. Остальное касается библиотек DLL и MIDL, которые можно заставить работать на любой платформе.

Фактически, COM предназначен для Windows (и даже это довольно быстро умирает).

0
ответ дан 2 September 2019 в 23:20
поделиться

Если вы хотите иметь возможность создавать классы COM, указав «строку», и хотите, чтобы ОС могла искать правильную двоичную библиотеку для загрузки, а также создавать фактический класс (объект) COM, тогда некоторая форма регистрации не требуется.

Помимо этого, если вы хотите использовать только интерфейсы в стиле COM (интерфейсы, производные от IUnknown, IDispatch и т. Д.), Вы можете сделать это на любых языках C ++ (при условии, что реализация vtable этого компилятора C ++ совместима с COM ).

Наконец, некоторые возможности COM, такие как межпроцессное взаимодействие и удаленный вызов, предоставляются как часть ОС Windows. Вам нужно будет реализовать свои собственные, если эти возможности потребуются.

На странице Википедии на CORBA , кажется, есть ссылки на несколько вариантов. Проверьте раздел "См. Также".

1
ответ дан 2 September 2019 в 23:20
поделиться

Запись в википедии для Microsoft COM говорит в «Обзоре», что «стандарт интерфейса реализован на нескольких платформах», но не указывает, какие именно. Если вы ищете кросс-платформенный подход, вам может быть лучше использовать что-то вроде XPCOM .

1
ответ дан 2 September 2019 в 23:20
поделиться

Теоретический ответ - да, можно использовать компоненты COM на других платформах. Вот статья 1998 года о Сборка COM-компонентов в UNIX . Однако даже в те времена это не было популярным (или разумным!) Подходом.

0
ответ дан 2 September 2019 в 23:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: