DELPHI 4. Технология СОМ
книга

DELPHI 4. Технология СОМ . OLE, ActiveX, MIDAS Microsoft Transaction Server

Автор: Н. Елманова, С. Трепалин

Форматы: PDF

Издательство: Диалог-МИФИ

Год: 1999

Место издания: Москва

ISBN: 5-86404-127-0

Страниц: 279

Артикул: 41425

Возрастная маркировка: 16+

Электронная книга
100

Краткая аннотация книги "DELPHI 4. Технология СОМ"

Книга посвящена использованию технологии Component Object Model (COM) в приложениях, созданных с помощью Delphi 4. В ней рассматриваются вопросы использования в приложениях OLE-документов, создания, тестирования и применения элементов управления ActiveX, создания серверов и клиентов автоматизации, в том числе приложений, управляющих составными частями Microsoft Office, использования COM-серверов, входящих в состав 32-разрядных версий Windows, работы с потоками во внутренних серверах автоматизации. Большое внимание также уделяется удаленному доступу к COM-серверам, организации распределенных вычислений с прменением технологий Inprise MIDAS и Microsoft DCOM (Distributed COM), а также повышению эффективности использования ресурсов и управлению распределенными транзакциями с помощью технологии СOM+, реализованной в продукте Microsoft Transaction Server. Пособие предназначено для опытных программистов, имевших практику разработки приложений с помощью Delphi и интересующихся вопросами применения COM-технологии и создания распределенных систем.

Содержание книги "DELPHI 4. Технология СОМ"


Предисловие
От авторов
1. Назначение и принципы COM-технологии
1.1. Проблемы, решаемые с помощью COM-технологии
1.2. Понятие интерфейса
1.3. IUnknown: работа с памятью, подсчет числа ссылок и запросы на предоставление интерфейсов
1.4. IClassFactory и использование системного реестра
1.5. ITypeLib, ITypeInfo, библиотеки типов и информация о методах сервера. Язык IDL
1.6. IDispatch и вызов методов “по имени”
1.7. IMarshall, маршалинг и взаимодействие клиента с внутренними, локальными и удаленными серверами
1.8. Реализация интерфейсов в Delphi
2. Использование OLE-документов в приложениях
2.1. Создание и отображение OLE-документов в формах
2.2. Использование свойств OleContainer
2.3. Хранение OLE-объектов в базах данных
3. Создание элементов управления ActiveX с помощью Delphi
3.1. Что такое ActiveX
3.2. Создание элементов управления ActiveX на основе VCL-компонентов
3.3. Создание страниц свойств
3.4. Создание активных форм
3.5. Использование собственных диалогов на этапе разработки элементов управления ActiveX
3.6. Получение информации о контейнере
3.7. Считывание свойств элемента управления ActiveX инспектором объектов
3.8. Перемещение по Web-страницам с помощью элемента управления ActiveX
3.9. Изменения свойств элемента управления ActiveX на Web-странице
3.10. Система безопасности Micfosoft Internet Exprorer и цифровая подпись
4. Создание локальных серверов и контроллеров автоматизации
4.1. Понятие об автоматизации
4.2. Подготовительный этап: создание приложения, подлежащего автоматизации
4.3. Превращение приложения в сервер автоматизации
4.4. Библиотека типов
4.5. Создание кода реализации методов объекта автоматизации
4.6. Тестирование сервера автоматизации
4.7. Создание контроллеров для произвольных серверов автоматизации (на примере приложений MS Office)
4.8. Создание коллекций объектов
4.9. Экспонируемые свойства и методы
4.10. Нотификационные сообщения в локальных серверах автоматизации
5. Создание внутренних серверов и контроллеров автоматизации. Модели разделения памяти и многопоточность
5.1. Внутренний сервер автоматизации и передача данных
5.2. Работа внутреннего сервера автоматизации в многопоточном режиме
5.3. Нотификационные сообщения во внутренних серверах автоматизации
6. Применение COM-объектов, входящих в состав Windows 148
6.1. Создание ярлыков
6.2. Получение уведомлений от Windows Explorer
6.3. Создание собственных окон просмотра данных в Windows Explorer
6.4. OLE-реализация метода drag-and-drop
6.5. Использование Microsoft Internet Explorer в приложениях
7. Удаленный запуск серверов автоматизации
7.1. Маршалинг и удаленный доступ к COM-серверам
7.2. Использование Microsoft DCOM в качестве Service Control Manager
7.3. Использование Inprise OLEnterprise в качестве Service Control Manager
7.4. Использование Borland Socket Server в качестве Service Control Manager
8. Организация распределенной обработки данных с помощью автоматизации. Использование MIDAS
8.1. Зачем нужна распределенная обработка данных
8.2. Создание сервера приложений
8.3. Создание клиентского приложения с доступом по протоколу TCP/IP
8.4. Briefcase model
8.5. Использование активных форм для создания “тонкого” клиента
8.6. Многопользовательская работа в трехзвенных информационных системах
8.7. Аутентификация пользователей
8.8. Универсальный сервер доступа к данным
8.9. О ссылочной целостности и проверке допустимости данных
8.10. Использование DCOM и OLEnterprise
8.11. Поставка “тонких” клиентов и серверов приложений и вопросы лицензионной политики
8.12. Различные архитектуры построения многозвенных информационных систем
9. Создание объектов Microsoft Transaction Server
9.1. Зачем нужен Microsoft Transaction Server
9.2. Как работает MTS
9.3. Требования к объектам MTS
9.4. Пример 1: создание простейшего серверного объекта
9.5. Отладка серверных объектов MTS
9.6. Пример 2: создание объектов для управления распределенными транзакциями
Вместо заключения

Все отзывы о книге DELPHI 4. Технология СОМ . OLE, ActiveX, MIDAS Microsoft Transaction Server

Чтобы оставить отзыв, зарегистрируйтесь или войдите

Отрывок из книги DELPHI 4. Технология СОМ . OLE, ActiveX, MIDAS Microsoft Transaction Server

1. Назначение и принципы COM-технологии 17 был создан при старте COM-сервера, конструктор класса, реализующий фаб-рику класса, обычно помещается в секции initialization какого-нибудь модуля. Главный метод IClassFactory – CreateInstance. В качестве параметра он принимает IID интерфейса, ссылку на который необходимо вернуть клиенту, и переменную, куда помещается ссылка на требуемый интерфейс. При реали-зации метода CreateInstance необходимо проверить IID всех интерфейсов, экспонируемых данной фабрикой класса. При совпадении с передаваемым в качестве параметра идентификатором возможно несколько вариантов реали-зации: Если ранее не был создан экземпляр класса, который реализует требуе-мый интерфейс, то вызывается его конструктор. Если уже имеется экземпляр класса, то возвращается ссылка на него и счетчик ссылок увеличивается на единицу. В этом случае класс реализуется таким образом, чтобы одновременно обслуживать нескольких клиентов. Альтернативный вариант – при наличии уже работающей копии класса все равно создается новая копия. При таком способе работы число ссылок на ка-ждую рабочую копию всегда равно единице (при равенстве нулю рабочая ко-пия разрушается). Класс реализуется таким образом, чтобы обслуживать од-ного клиента. Типичный пример реализации метода CreateInstance приведен ниже: function TMyClassFactory.CreateInstance(UnkOuter: IUnknown; const iid: Tiid; var P): hResult; var hr:HResult; MyObject:TMyObject; begin if UnkOuter <> nil then begin Result:=E_Fail; Exit; end; if (not isEqualIID(iid, IID_IUnknown)) and (not isEqualIID(iid, CLSID_MyObject)) then begin Result := E_Fail; Exit; end; MyObject :=TMyObject.Create; if MyObject = nil then begin Pointer(Obj) := nil; Result := E_OutOfMemory; Exit; end; hr := MyObject.QueryInterface(iid, P); if Failed(hr) then MyObject.Free else Inc(ObjCount); Result := hr; end; Первый параметр – UnkOuter – используется для создания агрегатов (их обсуждение выходи...