Идёт загрузка страницы...

htp://aptem.net.ru






На главную страничку учебника Visual Basic

ActiveX в Visual Basic

Современный программист, работающий в среде Visual Basic, неизбежно столкнется с технологией ActiveX, которая и является темой данной главы. Управляющие элементы для работы в Internet или внешние утилиты (Add-Ins) для расширения возможностей IDE — все это ActiveX. Более того, значение технологии ActiveX выходит далеко за рамки Visual Basic — это стратегическое направление, которое избрала корпорация Microsoft в вопросах развития современных технологий программирования. Почти все программные продукты Microsoft располагают в той или иной мере способностью предоставлять свои функциональные возможности другим приложениям или пользоваться функциональными возможностями других приложений (так называемая объектная модель). В этом плане выдвижение на передний план технологии ActiveX является, с одной стороны, развитием объектной модели, а с другой — ответом корпорации Microsoft на появление языка Java, который продвигает компания Sun Microsystems и который претендует на роль макроязыка среды Internet.

Чтобы понять истоки технологии ActiveX, необходимо проанализировать путь, по которому развивалась сама идея объектной модели.

СОМ

Задолго до появления терминов OLE (и, уж тем более, ActiveX) разработчикам из Microsoft пришла в голову мысль о программном объекте, независимом от языка, на котором пишется программа. Так родилась технология СОМ (Component Object Model — компонент, основанный на объектной модели). Спецификация СОМ определяла правила, которых должен был придерживаться программный объект, находящийся в оперативной памяти компьютера. При этом не имело значения, с помощью какого

языка программирования создан данный объект, спецификация СОМ задавала правила поведения для программного объекта вообще (это включало в себя формат размещения объекта в памяти, а также протокол взаимодействия объекта с окружающей программной средой).

С появлением спецификации СОМ был заложен фундамент многократно используемых компонентов, которые могли участвовать во многих проектах, не изменяя своего кода.

OLE

Вскоре после СОМ на свет появилась технология OLE (Object Linking and Embedding — связывание и внедрение объектов). Первоначальной целью Microsoft была документная ориентация среды Windows. Но по прошествии времени технология OLE стала фактическим стандартом для многократно используемого кода. Практически речь шла о развитии спецификации СОМ — при этом технология OLE позволяла на правах «многократно используемого кода» создавать управляющие элементы, организовывать управление версиями объектов, а также осуществлять связывание и внедрение объектов.

ActiveX

С помощью технологии ActiveX корпорация Microsoft намеревается завоевать Internet. Корни ActiveX лежат в технологии OLE, которую разработчики из Microsoft распространили на Internet-приложения. В результате управляющие элементы, созданные в соответствии с требованиями технологии ActiveX должны выполняться в среде Internet, что способно необычайно расширить функциональные возможности Visual Basic-программ, использующих ActiveX-элементы.

DCOM

DOOM (Distributed СОМ ) представляет собой расширение стандарта СОМ. В отличие от первоисточника (стандарт СОМ определял «правила поведения» программного объекта в памяти) DCOM специфицирует интерфейс между программными объектами, средой взаимодействия которых является Internet. Ниже представлена терминология OLE/ActiveX в языке Visual Basic 5.

Термин OLE
Термин ActiveX
Описание
OLE-объект OLE-объект Связываемый или внедряемый объект, содержащийся в OLE-элементе (OLE-контейнере).
Объект OLE-Automation ActiveX-объект Доступный для программирования объест, разрешающий доступ к своим свойствам и методам извне.
OLE-сервер (визуальный) OLE-сервер (визуальный) Приложение, располагающее связываемым или внедряемым объектом.
OLE-сервер (программируемый) ActiveX. EXE Приложение, предоставляющее другим приложениям связываемый или внедряемый объект.
OLE DLL ActiveX.DLL DLL-библиотека, содержащая доступный для программирования объект.
Custom Control ActiveX Control Управляющий элемент, который может функционировать в составе приложения независимо от языков программирования, на которых написано приложение и сам элемент.
нет соответствия ActiveX Document.EXE Приложение, которое Microsoft Internet Explorer может интерпретировать в качестве Web-страницы.
нет соответствия ActiveX Document.DLL Компонент, который может быть интерпретирован в качестве Web-страницы.

Дополнительные управляющие элементы

Технология ActiveX играет важную роль в среде Visual Basic еще и потому, что дополнительные управляющие элементы включаются в состав программы в форме ActiveX-элементов. При этом обращаться с ними в процессе визуального программирования можно так же, как и со стандартными элементами.

Обзор:

  • Прежде чем дополнительный управляющий элемент можно будет использовать, его необходимо включить в состав коллекции инструментов для данного проекта. Однако элемент при этом должен быть предварительно зарегистрирован в системе. Регистрация большинства элементов выполняется автоматически при их установке, явным образом это можно сделать с помощью системной утилиты regsvr32.exe.
  • Зарегистрированный элемент можно включить в состав коллекции инструментов посредством диалога Components (одноименная команда меню Project). Вкладка Controls этого диалога содержит список зарегистрированных элементов — достаточно поставить пометку (галочку) напротив имени элемента и щелкнуть на ОК, и значок элемента появится в окне коллекции инструментов, откуда его можно поместить на форму обычным способом.
  • Как и стандартные, дополнительные управляющие элементы обладают свойствами, методами и событиями. Кроме обычного способа доступа к свойствам на этапе визуального программирования многие из дополнительных управляющих элементов дают возможность открыть диалог Property Pages (одноименная команда меню View или [Shift]+[F4]), где обеспечивается более удобный доступ к некоторым свойствам.
  • Как только дополнительный элемент включен в состав проекта, информация о его свойствах, методах, событиях и константах становится доступной в каталоге объектов ([F2] или команда Object Browser меню View).

Дополнительные управляющие элементы Visual Basic

Точный состав набора дополнительных элементов, поставляемых в составе пакета Visual Basic, зависит от варианта (издания) пакета. В частности, MAPI-элементы и элемент Internet Transfer имеются только в профессиональных вариантах Visual Basic.

На главную страничку учебника Visual Basic