Программирование >>  Руководство по созданию web приложений 

1 ... 110 111 112 [ 113 ] 114 115 116 ... 141


Глава 7. Расширения CGI и ISAP! сервера Web 331

Получив управление, эта функция вызывает функцию oeti выполняющую обращение к базе данных:

. : : , I. 32UseгРвззлСШ, szUssrRlc]htSJ)

else

После вызова этой функции поток продолжает формирование содержимого буфера выходного документа siBiiff.

Па следующем этапе поток отправляет браузеру заголовок документа ПТТР, вызывая для этого функцию char szHeaderlJ = Content-type:

= 200 OK ;

: = OR );

, = alter), . - = FALSE;

success = a

a . . - lrifa. NULL, NULL) ;

остается только отправить браузеру содержимое буфера документа ПТМТ, что \naaii!ci сделать при помощи WriteClient:

= strlen(szBuff);

. аСВаСоааЮ, salaff, blwSiae 0);

Теперь мы можем завершить сеанс средствами функции ServeaSuppoat-

а. - . . передав ей во втором параметре константу HSE JEQDONE JIIlHSESSlOi:

а : . : г.. NULL, NULL ) ;



в А 8

Создание серверных элементов управления ActiveX

Б этой главе мы кратко рассмотрим создания собственных элементов

управления ActiveX для расширения объектной модели ASP. Мы будем назвать их серверными элементами управления ActiveX.

В отличие от клиентских элементов управления загружаемых бра-

узером для работы на компьютере посетителя, серверные элементы управления исполняются на сервере Web. Они не вызывают потенциальных с бе-

зопасностью данных, возникающих при работе с клиентскими ActiveX, а также проблем с совместимостью браузеров, .характер! для технологии ActiveX.

Зачем создавать собственный серверный элемент ActiveX?

Возможности серверных сценариев, lai.iiariaiaiiii.ja в страницах ASP, ограничены рамками объектной модели ASP. Хотя, как Вы уже убедились, эта модель предоставляет прекрасные средства для проектирования интерфейса пользователя и для обращения к базам она имеет ограничения в вызова функций программного интерфейса Win32, а также функций, расположенных в библиотеках динамической DT,L.

Другой возникающий из-за применения в сценариях

ASP интерпретируемых и VBScript - невы-

сокая производительность. При формировании элементов :

интерфейса этот недостаток не существенен, однако, если Ваше приложение предназначено для выполнения интенсивной обработки больших объемов данных, вопросы . i а становятся значимыми.

Еще одна связанная с использованием серверных сценариев, име-

ет отношение к защите интеллектуальной собственности разработчика. Дело в том, что исходные тексты серверных и клиентских г laaaipHaa могут быть легко проанализированы администратором сервера Web, что не всегда желательно. Реализация бизнес-приложения в виде исполнимых модулей значительно нит работу злоумышленника, алгоритмы работы Вашего

приложения.

Конечно, все эти проблемы легко решаются при использовании таких рений - Web, как программы CGI или IStlI. рассмотренные в предыду-

щей главе. Однако этот подход тоже имеет свои недостатки. Наиболее существенные из них - это невозможность тесного взаимодействия .



вера Web с . - . - ASP (удобными для создания .

ского интерфейса и обращения к базам данных), а также сложность отладки.

т> проще создавать собственные расширения объектной модели в виде серверных элементов ActiveX. Эта технология допускает тесную интеграцию с серверными сценариями ASP. В случае реализации серверных ActiveX

на языке i\iiij !b:iiiii!i С++ обеспечивается возможность вызова любых

Win32 и функций из произвольных библиотек DLL. При этом обеспечивается высокая , : . ; работы созданных таким образом объектов.

Следует что серверные элементы ActiveX можно создавать и с при-

менением таких языков . .. как Visual Basic или Java, однако это

не всегда целесообразно. Язык Visual Basic удобен для разработки элементов ActiveX, но его применение вызывает проблемы с так как

Visual Basic относится к интерпретируемым Приложения Java также не

отличаются высокой скоростью работы и не всегда способны обращаться напрямую к интерфейсам операционной системы.

Поэтому в нашей книге мы расскажем лишь о приемах создания элементов ActiveX, созданных с применением С++. Причем для облегчения работы мы будем использовать библиотеку шаблонов Active Template Library (ATT), предоставляет мощные средства для создания приложений СОМ, к которым относятся элементы ActiveX.

Первый ipoi элемента ActiveX

в этом разделе мы опишем поэтапную процедуру создания простейшего серверного элемента управления ActiveX с применением Microsoft \ iaual С++ версии 6.0 и библиотеки шаблонов АТТ. Итак, начнем.

Создание проекта

Запустите Microsoft Visual С++ и выберите из меню Pile строку New. Па экране появится диалоговая панель New, открытая на вкладке Projects (рис. 8-1).

Workspaces \ С Resource Туре

Add-in Wzard Sloted fllSAPIExlensionWzatd

MFCAcriveX

Utihry Win32

mn32 Applicalon

Рис. 8-1. Диалоговая панель New



1 ... 110 111 112 [ 113 ] 114 115 116 ... 141

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика