Тема: Отличия ActiveX-Automation, COM-Automation и т.п.

Может ли кто-нибудь подсказать, имеются ли какие-либо отличия технологий ActiveX-Automation, COM-Automation, OLE-Automation. На сайте Autodesk через раз пишут то о поддержке Autocad'ом ActiveX-Automation, то о  COM-Automation. В руководствах разработчика такая же путаница.
Собственно может ли кто-нибудь внести какую-либо ясность в то, что на самом деле использует Autocad. Приветствуются ссылки на какой-либо информационный материал по указанным технологиям.
Заранее спасибо.

Re: Отличия ActiveX-Automation, COM-Automation и т.п.

> mk
В качестве ссылки. См.книгу:
Евангелос Петрусос "Visual Basic 6 Руководство разработчика" гл.14,15,16

Re: Отличия ActiveX-Automation, COM-Automation и т.п.

Спасибо за ссылку, OLE неплохо описан.
ActiveX слабо освещен.

Re: Отличия ActiveX-Automation, COM-Automation и т.п.

COM - общее название технологии(Component Object Model — модель компонентных объектов), позволяющей связывать разнородные приложения.
Это дает возможность проектировать такие системы, в которых одни приложения (приложения-клиенты) обращаются к другим приложениям (приложениям-серверам) для выполнения некоторых операций, специфичных для приложений-серверов.
COM реализуется разными способами.Имеется тьма аббревиатур, придуманных Microsoft, причем аббревиатуры меняют свое значение. То, что мы сейчас называем COM в момент своего рождения называлось совсем по другому, OLE - Object Linking & Embedding - встраивание и связывание объектов.
«Чистая OLE» породила технологию OLE Automation - автоматизацию, а затем из OLE концептуально выкристаллизовалась технология самого нижнего уровня - COM. После этого Microsoft переименовала OLE в ActiveX и заявила, что COM является не частью OLE, а самостоятельной платформой. Платформой, на которой и располагаются все другие «компонентные» технологии. Поэтому ActiveX является производной технологией, выстроенной на платформе COM. От перемены названия суть технологий (да и большая часть кода) не изменилась - ActiveX и OLE являются преемственными технологиями, а OLE Automation вообще осталась почти в первозданном виде.
Впоследствии Microsoft разработала на платформе COM набор интерфейсов для доступа к базам данных и опубликовала его под названием OLE DB, а также предложила платформу COM+. Это многообразие не должно сбивать с толку, все эти наименования относятся к одной и той же области понятий, база которой - COM.
То есть имеем этакий винегрет из понятий :(
Если упростить применительно к AutoCAD, то ActiveX Automation - это разновидность технологии COM, которую используют интерпретирующие языки. В AutoCAD это Visual LISP и VBA. Если при разработке своего COM-сервера надо дать к нему доступ из LISP или VBA, то надо непременно использовать  ActiveX Automation. Это более медленная разновидность по сравнению с двумя другими возможными способами — посредством обычного интерфейса и интерфейса диспетчирования.
Используется и COM-automation (сам AutoCAD). С ним можно работать и из других систем программирования, через интерфейсы.
В технические детали здесь, наверное вдаваться не стоит. Любопытные могут найти массу статей в Интернете. Которые еще больше запутают :)
А еще есть и ActiveX Controls - всякие "вижуальные" элементы...

Re: Отличия ActiveX-Automation, COM-Automation и т.п.

Неплохо описано. Стоит только добавить, для большей путаницы, из офицыальной спраки Microsoft по VBA, что (практически дословно) технология OLE-объектов является составной частью ActiveX-объектов.