Сообщений 8 Оценка 6 [+2/-0] Оценить |
У вас никогда не возникало проблем с изменением своей программы и добавлением в нее новой функциональности? Вам хотелось бы расширять возможности своих приложений, а не переписывать их периодически? Вы хотите разделить свое приложение на независимые компоненты? Необходимо ускорить их разработку, упростить настройку, сделать более динамичными?
Вы настраиваете Web-узел или создаете Web-страницу? Вам нужны новые возможности в среде операционных систем Microsoft или офисных пакетов этой фирмы? Вам требуется обмениваться данными с приложениями сторонних поставщиков?
Если вы ответили "да" хотя бы на один из этих вопросов, то вам необходима модель компонентных объектов фирмы Microsoft, известная под названием COM (Component Object Model).
Эта книга посвящена программированию COM-объектов и ActiveX-элементов при помощи библиотеки ATL (Active Template Library) фирмы Microsoft. Библиотека представляет собой набор классов-шаблонов на языке C++, которые инкапсулируют типовые операции с COM-объектами. Библиотека поставляется в составе Microsoft Visual Studio версии 6.0. Выпущено много книг, в которых рассматривается программирование с использованием Microsoft Visual Studio. Есть и книги по созданию ActiveX-элементов при помощи библиотеки MFC. Но руководства по программированию на основе ATL фактически не существует. Его нет даже в составе документа-ции, поставляемой вместе с Visual Studio. Данная книга восполняет этот пробел.
Кроме библиотеки ATL среда программирования Microsoft Visual Studio предоставляет средства, упрощающие ее использование: мастер по созданию приложений с использованием ATL (ATL COM AppWizard) и мастер по добавлению в приложение классов на C++, созданных на основе ATL (ATL Object Wizard). В состав среды вхо-дят также несколько мастеров общего применения, позволяющих добавлять в интерфейсы и классы новые методы и свойства. Использование этих мастеров сводит большую часть программирования COM-объектов при помощи ATL к нескольким щелчкам мыши. Везде, где возможно, в книге приводятся примеры работы с этими мастерами, чтобы продемонстрировать, как Visual Studio облегчают процесс написания COM-объектов и ActiveX-элементов.
Первая глава книги является кратким описанием спецификации COM и библиотеки ATL. Представлено определение COM-интерфейса, описаны способы повторного использования COM-объектов, приведен обзор основных технологий на основе COM - автоматизации, составных документов, ActiveX и др. Для всех элементов спецификации указаны классы и макроопределения библиотеки ATL, используемые для их реализации.
Вторая глава посвящена базовым механизмам COM: созданию объектов, агрегированию, автоматизации и устойчивости. Для каждого механизма рассмотрены детали реализации в библиотеке ATL.
В третьей главе рассмотрен процесс создания простых COM-объектов для использования на Web-страницах. Кроме того, исследованы особенности вызова методов COM-объектов из VBScript и JScript.
В четвертой главе описывается спецификация ActiveX-элементов и классы ATL для их реализации. Кратко представлен обзор элементов управления ActiveX, начиная с составных документов и заканчивая безоконными элементами и активными документами. Приведены примеры создания встраиваемых объектов, поддерживающих активизацию по месту и другие возможности.
Пятая глава посвящена созданию диалоговых окон с применением ATL. Диалоговые окна могут использоваться как в качестве контейнеров для ActiveX-элементов, так и в качестве основы для создания составных элементов (это ActiveX-элемент, содержащий другие ActiveX-элементы) или страниц свойств. Описаны средства, которые предоставляет ATL для поддержки всех этих возможностей.
В шестой главе описывается новая технология создания элементов управления ActiveX, которая заключается в размещении в объекте обозревателя Internet Explorer. Тогда содержимое объекта определяется тем URL, который задан обозревателю для отображения. Это позволяет создавать ActiveX-элементы с динамически меняющимся содержимым. Представлены возможности ATL по поддержке такой технологии.
В седьмой главе показаны возможности ATL по созданию объектов в исполняемых файлах, в том числе в сервисах Windows NT. Описаны проблемы, возникающие при создании COM-объектов в EXE-файлах, и рассмотрены пути их решения с помощью ATL.
В приложениях приведены особенности отладки COM-объектов, написанных с использованием ATL, описаны некоторые полезные классы общего применения, входящие в ATL, и даны советы по совместному использованию библиотек MFC и ATL в рамках одного проекта.
Книга предназначена для программистов-профессионалов, знакомых с языком C++ и имеющих общее представление о COM. Хотя в книге модель COM и шаблоны C++ описаны достаточно подробно, если представленного материала вам будет недостаточно, обратитесь к источникам, перечисленным в разделе "Литература".
Обычно программистов, особенно начинающих, которые желают создавать ActiveX-элементы при помощи ATL, отпугивает применение классов-шаблонов, поскольку мало кто использует их в своих программах. Я сам был в их числе, но, начав применять ATL, убедился в гибкости, простоте и мощи этой библиотеки, достигаемых благодаря шаблонам. Всем новичкам в разработке элементов управления ActiveX я рекомендую сразу начинать с библиотеки ATL, изучая COM лишь по мере необходимости.
Глава 1. COM и ATL
Глава 2. Создание объектов COM при помощи ATL
Глава 3. Создание объектов COM для Internet
Глава 4. Создание ActiveX-элементов
Глава 5. Диалоговые окна в ATL
Глава 6. ActiveX-элементы на основе обозревателя Internet Explorer
Глава 7. EXE-серверы и сервисы
Приложение А. Особенности отладки ATL-объектов
Приложение Б. Некоторые полезные классы
Приложение В. MFC и AT
Литература
Сообщений 8 Оценка 6 [+2/-0] Оценить |