Без темы
<<  CityCom CompactMaster 100  >>
COM в visual foxpro® 6.0 (основные понятия)
COM в visual foxpro® 6.0 (основные понятия)
Microsoft® Windows® Distributed interNet Applications Architecture
Microsoft® Windows® Distributed interNet Applications Architecture
COM в visual foxpro® 6.0 (основные понятия)
COM в visual foxpro® 6.0 (основные понятия)
COM в visual foxpro® 6.0 (основные понятия)
COM в visual foxpro® 6.0 (основные понятия)
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Объектная модель
Картинки из презентации «COM в visual foxpro® 6.0 (основные понятия)» к уроку информатики на тему «Без темы»

Автор: Михаил Дроздов. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока информатики, скачайте бесплатно презентацию «COM в visual foxpro® 6.0 (основные понятия).ppt» со всеми картинками в zip-архиве размером 362 КБ.

COM в visual foxpro® 6.0 (основные понятия)

содержание презентации «COM в visual foxpro® 6.0 (основные понятия).ppt»
Сл Текст Сл Текст
1COM в visual foxpro® 6.0 (основные 6(TypeLib) (которая и содержит описание
понятия). Дроздов Михаил Компания «ИВС интерфейса COM-компоненты) имеется
Софт» My Page: http://vfpdmur.narod.ru/ интерфейс ITypelib. Interface ITypeLib :
ICS Page: http://ics.perm.ru/ IUnknown { FindName(); GetDocumentation();
mailto:Drozdov@ics.perm.su. GetLibAttr(); GetTypeComp();
2Отличия модульного программирование и GetTypeInfo(); GetTypeInfoCount();
с использованием классов. - Использование GetTypeInfoOfGuid(); GetTypeInfoType();
PUBLIC-переменных для передачи значений IsName(); ReleaseTLibAttr(); }.
между классами приводит к потери контроля 7Интерфейс IDispach. OLE automation
над их значениями + Взаимодействие между создано для языков, не имеющих механизмов
классами определяется открытым интерфейсом работы со ссылками (visual basic, visual
классов. Наследование позволяет исключить foxpro, и т.Д.) И основывается на
дублирование кода, а инкапсуляция - интерфейсе idispatch.
защитить данные. - Компоновка на этапе MIDL_INTERFACE("00020400-0000-0000-C0
LINK в монолитное (более не изменяемое) 0-000000000046") IDispatch : public
приложение. (+ VFP позволяет осуществлять IUnknown { public: virtual HRESULT
динамическое создание экземпляров классов STDMETHODCALLTYPE GetTypeInfoCount( /*
из библиотек на этапе выполнения). - [out] */ UINT __RPC_FAR *pctinfo) = 0;
Использование PUBLIC-переменных для virtual HRESULT STDMETHODCALLTYPE
передачи значений между процедурами GetTypeInfo( /* [in] */ UINT iTInfo, /*
приводит к потери контроля над их [in] */ LCID lcid, /* [out] */ ITypeInfo
значениями - Возможность взаимодействовать __RPC_FAR *__RPC_FAR *ppTInfo) = 0;
с внешней средой данных, только через virtual HRESULT STDMETHODCALLTYPE
значения, явно указанного и фиксированного GetIDsOfNames( /* [in] */ REFIID riid, /*
на этапе разработки списка параметров - [size_is][in] */ LPOLESTR __RPC_FAR
Компоновка на этапе LINK в монолитное *rgszNames, /* [in] */ UINT cNames, /*
(более не изменяемое) приложение. DEFINE [in] */ LCID lcid, /* [size_is][out] */
CLASS myclass AS custom PROTECTED pot_prop DISPID __RPC_FAR *rgDispId) = 0; virtual
pot_prop = 'value protected property' /* [local] */ HRESULT STDMETHODCALLTYPE
pub_prop = 'value public property' name = Invoke( /* [in] */ DISPID dispIdMember, /*
"myclass" version = '1.0' [in] */ REFIID riid, /* [in] */ LCID lcid,
FUNCTION pubmethod(param1[,...Paramn]) … /* [in] */ WORD wFlags, /* [out][in] */
использование: свойств и методов класса DISPPARAMS __RPC_FAR *pDispParams, /*
return retvar endfuc enddefine. PUBLIC [out] */ VARIANT __RPC_FAR *pVarResult, /*
pvat1[,…,pvatn] PROCEDURE modul_name1( [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
param1 [, …, paramn]) { LOCAL var1[,…, /* [out] */ UINT __RPC_FAR *puArgErr) = 0;
varn] … использование: param1 [, …, };
paramn] pvat1[,…,pvatn] CALL 8Ole-серверы. OLE-серверы в зависимости
modul_namei(var1[,…,varn]) RERURN retvar от памяти, в которой они выполняются,
}. бывают двух типов: вне процесса клиента
3Проблемы традиционного (Out-of-process) исполняемые файлы с
программирования. Библиотека модулей. расширением EXE обычно могут быть
Библиотека классов. Модуль. Класс. Модуль. выполнены не только в 32-разрядной, но и в
Производный класс. Модуль. Класс. 16- разрядной OS кроме того они могут
Приложение. Приложение. Модуль. Экземпляр содержать визуальный интерфейс для
класса. Модуль. Экземпляр класса. Модуль. пользователя. в процессе клиентского
Экземпляр класса. Монолитное (необходимо приложения (In-process) файлы с
«целиком» переделывать всё приложения расширением DLL только под 32-разрядной OS
после изменений) Жёстко зависит от языка не могут содержать визуальный интерфейс
программирования (практически отсутствует для пользователя и не может быть внешним
возможность использования различных языков (удалённым сервером). Для создания
в одном приложении). OLE-компонента достаточно добавить при
4Что такое COM (Component Object описании класса (DEFINE CLASS) опцию
Model). Технология спецификация или OLEPUBLIC (в диалоге Class info в
стандарт создания программного редакторе классов), это позволит, в
обеспечения, позволяющая: использовать зависимости от опции Win32 executable /
возможности любых языков программирования COM server (exe) Single-threaded COM
в рамках одного приложения (конечно, речь server (dll) - каждое приложение-клиент
идёт об языках, способных создавать использует свою копию сервера
COM-компоненты) исполнять COM-компонент на Multi-threaded COM server (dll) -
множестве платформ: Microsoft® Windows®, несколько приложений может использовать
Microsoft Windows NT™, Apple® Macintosh®, одну копию сервера VFP создать и
UNIX® изменять любой компонент не нарушая зарегистрировать OLE-компоненту, при этом,
работы всего приложения, т.е. позволяет помимо EXE/DLL будет созданы файлы с
развивать возможности ПО компоненты COM расширениями VBR и TLB, обеспечивающие
являются прозрачно перемещаемы, регистрацию компоненты в системном реестре
следовательно позволяют оптимально и описание интерфейсов Вашей компоненты.
распределить ПО согласно мощностям парка После первого создания Вашей компоненты
машин в Вашей организации. Краткая история будет доступна информация на вкладке
COM: первоначальной целью было поддержка Server в диалоге Project Info.
концепции связывания и внедрения (object 9Ole-серверы (ряд функций).
linking and embedding) объектов, CreateObject(ClassName [, eParameter1,
обеспечивающей существование различных eParameter2, ...]) - создаёт экземпляр
документов в одном. Реализация этой объекта CreateObjectEx(cCLSID | cPROGID,
концепции известна под названием OLE cComputerName) - создаёт экземпляр объекта
Первая версия для связи между клиентом и удалённого компьютера SYS(2335 [, 0 | 1])
компонентов использовала аппарат известный - включает/отключает режим допустимости
под названием динамический обмен данными модальных диалогов в COM-exe сервере (без
(dynamic data exchange - DDE). В то время второго параметра возвращает режим:
COM не существовало и DDE был построен на 0-недопустимо 1-допустимо) Для COM-dll
основе передачи сообщений OS Windows, а серверов всегда недопустимо, т.е. вызывает
версия OLE в основу которой был положен ошибку команда WAIT или MESSAGEBOX( )
механизм DDE - OLE1. Позже был изобретён сообщения об ошибках диалог открытия
COM и следующая версия OLE (OLE2) была файлов ввод пароля на соединение с внешним
переписана на основе COM. Ещё позже она источником данных через ODBC SET OLEOBJECT
называлась просто OLE, теперь это называют включает/отключает режим поиска в
ActiveX. системном реестре. Компоненты, помещённый
5Интерфейсы COM. Интерфейс класса (или в различных построителях отыскиваются
компонента) - это некоторое множество безотносительно к этому режиму. VFP
свойств и методов, доступных из-вне этого является Automation Server-ом и клиенту
класса. На низком уровне - это доступны методы и свойства объекта
определённая структура памяти, содержащая Application Объект Project имеет коллекцию
массив указателей на функции класса. Servers объектов Server позволяющий
Основу COM составляет соглашения о получить всю необходимую информацию о
межкомпонентном интерфейсе, т.е. некоторое создаваемом в VFP COM-компоненте.
множество внутренних свойств и методов, 10Ole-серверы (ряд функций).
присущих всем COM компонентам, используя Comclassinfo(oobject [, ninfotype])
который можно получать информацию о пример: 1 - excel.Application.8 2-
прикладных методах и свойствах компонента. excel.Application microsoft excel 97
Нужно иметь ввиду, что компонент это не application
класс: компонент может быть реализован как {00024500-0000-0000-C000-000000000046}
используя несколько классов, так и вообще commarray(oobject [, nnewvalue]) 0 -
без класса, лишь бы он удовлетворял первый индекс 0 и передача по значению 1 -
спецификациям COM в настоящей реализации первый индекс 1 и передача по значению 10
отсутствует наследование (это - первый индекс 0 и передача по ссылке 11
предполагается осуществить в версии COM+) - первый индекс 1 и передача по ссылке
однажды созданные (опубликованные) remote auto connection manager - позволяет
интерфейсы COM-компонента не изменяются. выполнить регистрацию com-компонент для
(нарушение этого привело бы к выполнения «удалённых по сети» компонент
несовместимости версий компонентов) automation manager - обеспечивает «сетевое
Интерфейс COM, через который запрашиваются взаимодействие» компонент.
другие интерфейсы компонента называется 11Ole-серверы (взаимодействие через
Iunknown и он содержит в себе всего три сеть). Ole-компонента на клиенте.
метода: QueryInterface, AddRef, и Release Ole-компонента на сервере. Сетевой
Interface IUnknown { virtual HRESULT OLE-посредник Proxy. Сетевой OLE-посредник
__stdcall QueryInterface(const IID& Proxy. Адресное пространство клиента.
iid, void** ppv)= 0; virtual ULONG Адресное пространство сервера.
__stdcall AddRef() = 0; virtual ULONG Oleout32.DLL automation manager -
__stdcall Release() = 0; }. обеспечивает связь с сервером.
6Интерфейсы COM. Для получения ссылки Autprx32.DLL automation manager -
на интерфейс Iunknown используют функцию: обеспечивает связь с клиентом.
STDAPI CoCreateInstance( REFCLSID rclsid, 12Microsoft® Windows® Distributed
// ссылка на идентификатор (CLSID) объекта interNet Applications Architecture
LPUNKNOWN pUnkOuter, // ссылка на Iunknown (Windows DNA). Client’s Applications - COM
агрегирующего объекта, иначе NULL DWORD component’s (MTS) - SQL Database.
dwClsContext, // определяет контекст 13
создаваемого объекта REFIID riid, // 14Объектная модель. Excel 2000. 1(4).
ссылка на идент. интерфейса, который тр. Microsoft excel 2000 в MSDN oct99
получить LPVOID * ppv // адрес для …/office/excel9.Olb VBAXL9.Chm.
возвращаемой ссылки на интерфейс тр. 15Объектная модель. Excel 2000. 2(4).
интерфейс ) Функция CoCreateInstanceEx 16Объектная модель. Excel 2000. 3(4).
позволяет получать интерфейсы удалённых 17Объектная модель. Excel 2000. 4(4).
серверов. Для облегчения работы с ком 18Объектная модель. Word 2000. 1(7).
сервером создан интерфейс «фабрики Microsoft word 2000 в MSDN oct99
классов» Interface IClassFactory : …/office/msword9.Olb VBAWRD9.Chm.
IUnknown { HRESULT CreateInstance( 19Объектная модель. Word 2000. 2(7).
IUnknown * pUnkOuter, //Pointer to whether 20Объектная модель. Word 2000. 3(7).
object is or isn't part of an aggregate 21Объектная модель. Word 2000. 4(7).
REFIID riid, //Reference to the identifier 22Объектная модель. Word 2000. 5(7).
of the interface void ** ppvObject 23Объектная модель. Word 2000. 6(7).
//Address of output variable that receives 24Объектная модель. Word 2000. 7(7).
the interface pointer requested in riid ); 25Объектная модель. Outlook 2000. 1(2).
HRESULT LockServer(BOOL fLock ); Microsoft outlook 2000 в MSDN oct99
//Increments or decrements the lock count …/office/msoutl9.Olb VBAOUTL9.Chm.
} Для «работы» с библиотекой типов 26Объектная модель. Outlook 2000. 2(2).
COM в visual foxpro® 6.0 (основные понятия).ppt
http://900igr.net/kartinka/informatika/com-v-visual-foxpro-6.0-osnovnye-ponjatija-186761.html
cсылка на страницу

COM в visual foxpro® 6.0 (основные понятия)

другие презентации на тему «COM в visual foxpro® 6.0 (основные понятия)»

«Переменные Visual Basic» - Пример программного кода Visual Basic. Переменная. Типы переменных. Byte, short, integer, long, single, double – типы числовых значений. Присваивание переменным значений. Переменные: тип, имя, значение. Имена переменных. Объявление переменных. A = 216 b = -31576 c = 3.1415926 D = “visual basic” А = А - 10.

«История создания ЭВМ» - Увеличенная фотография первой планарной микросхемы. Большие интегральные схемы. «Минск-1» - первая из фирменного семейства белорусских ЭВМ (1960 г.). Микропроцессор. Графический оконный интерфейс компьютера Alto. Микропроцессорная революция. 80-колонные перфокарты и 8-дорожечные перфоленты. Члены восьмерки.

«Вред и польза компьютера» - Как и все приборы потребляющие электроэнергию, компьютер испускает электромагнитное излучение. Боль в руках, особенно в кисти правой руки, вызванная долгой работой за компьютером приобрела название синдрома запястного канала. Компьютер является самым опасным источником электромагнитного излучения. Компьютер: польза или вред.

«Киностудия Windows Live» - Варианты сохранения вашего видео. У вас есть несколько отделов в каждой вкладе. Которые отображаются в правом поле. Киностудия что нового. Отдел публикации позволяет вам публиковать ваше видео сразу из “Киностудии”! Вкладка Визуальных эффектов. Как видите интерфейс достаточно прост. Давайте рассмотрим поподробнее.

«Серверная архитектура» - Интерфейс общего шлюза. Тонкий клиент. Многозвенная архитектура. Схема. Серверные сценарии. Серверные и клиентские сценарии Web-приложений. Собственно данные. Задачи клиентских и серверных сценариев. Изменение данных средствами ADO. Сервер WWW. Менеджер транзакций. Интеграция диспетчеров БД. Активные серверные страницы.

«Игра» - Турнир (несколько игроков например не более 5). Краткое описание игры I. Технический Вырезы (несколько вариантов) Изменение геометрии бортов. Целевая аудитория. Приглашать к себе игроков из сети. Повысить узнаваемость бренда среди интернет аудитории. Сегодня марка SOL экспортируется на рынки более ста стран мира.

Без темы

778 презентаций
Урок

Информатика

130 тем
Картинки
900igr.net > Презентации по информатике > Без темы > COM в visual foxpro® 6.0 (основные понятия)