Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Составляющие технологии СОМ
Интересные статьи о СОМ с философским уклоном можно посмотреть по ссылке http://www.developing.ru/com/comix.html . Автор Михаил Безверхов. Интерфейсы COM. Клиент взаимодействует с объектом COM посредством интерфейса, который представляет собой набор функционально или семантически связанных подпрограмм, с помощью которых обеспечивается связь клиента с провайдером сервисов (сервером). Стандартный способ изображения интерфейса приведен на рис.34.1.
Рис.34.1. Стандартное обозначение реализации интерфейса
Например, каждый COM объект имеет базовый интерфейс IUnknown, который сообщает, какие интерфейсы объекта доступны клиенту. Любой интерфейс сообщает клиенту, какие возможности – методы, свойства и события – он предоставляет. Ключевыми аспектами интерфейсов объектов COM являются следующие: · будучи однажды опубликованным, интерфейс не должен изменяться ни при каких обстоятельствах. При необходимости расширение функциональности или предоставление модифицированных методов должно быть выполнено за счет добавления других интерфейсов. Выполнение этого требования гарантирует сохранение работоспособности приложений, использующих «старые» версии методов; · по соглашению, имя интерфейса должен начинаться с заглавной буквы I, например, IMalloc или IPersist; · каждый интерфейс имеет гарантированный уникальный идентификатор GUID (Globally Unique Identifier), который представляет собой 128-битное случайное число. Эти идентификаторы называют Interface Identifiers (IIDs). Использование таких идентификаторов ограничивает возможность конфликтов между разными версиями или продуктами; · интерфейсы обладают языковой независимостью. Для реализации интерфейса может быть использован любой язык программирования, который поддерживает указатели и структуры и позволяет вызвать функцию по указателю на нее; · сами по себе интерфейсы не являются объектами, а предоставляют способ получения доступа к объекту, а клиент получает доступ к данным объекта посредством вызова функций; · любой интерфейс является наследником базового интерфейса IUnknown; · обращения к интерфейсам могут перенаправляться между потоками, процессами и сетевыми компьютерами невидимо для клиента. Базовый интерфейс IUnknown. Этот интерфейс, который должны поддерживать все COM объекты, включает следующие функции: · QueryInterface; · AddRef ; · Release.
Метод QueryInterface, объявленный как
|
|||||||||||||||
Последнее изменение этой страницы: 2018-04-12; просмотров: 567. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |