Использование новой технологии WebClass в VB6 упрощает создание гибких и мощных интернет-приложений. Ранее в этом году мы показали, как написать приложение для регистрации, которое позволяет пользователям посещать вашу страницу и регистрироваться для получения программного продукта. Класс регистрации пользователей», VBPJ, апрель 1998 г. и «Добавление регистрации по электронной почте на ваш сервер», VBPJ, май 1998 г.]. После регистрации приложение отправит пользователю последовательность действий по номеру электронной почты, и будет установлено соединение с Интернетом. чтобы продолжить процесс регистрации. Приложение VB5, которое я показал вам ранее, создало DLL ActiveX, которая работает на веб-сервере, и DLL, которая определяет статус пользователя и соответствующим образом вызывает соответствующий сценарий ASP (страница Active Server Now). новое средство для написания приложений этого типа с использованием новой технологии - WebClass.
Короче говоря, WebClass - это ActiveX, работающий на DLL веб-сервера. Он позволяет гиперссылке HTML-страницы в браузере клиента активировать события в серверной DLL. Режим программирования WebClass аналогичен традиционному режиму VB - разница в том, что в VB форма содержит элементы управления, а приложение WebClass представляет собой веб-страницу, содержащую элементы управления. На стороне сервера для разработчиков он известен. Полная модель событий VB, позволяющая выполнять высокоинтерактивную веб-разработку. В этой статье мы обсудим, как создать простое приложение WebClass, чтобы показать вам, насколько это просто.
Чтобы создать простое приложение WebClass, вам следует запустить VB6 и выбрать. Приложение IIS в диалоговом окне «Новый проект». Назовите проект SimpleReg в окне «Свойства». Дважды щелкните проект WebClass Designer в браузере (окно «Свойства» и «Браузер проекта» можно просмотреть в меню «Вид»). , назовите WebClass wcSimple и введите SimpleReg в свойстве NameURL. Он будет создан при компиляции библиотеки ActiveX. Запускной файл с именем SimpleReg.asp. Затем сохраните проект.
Приложение WebClass отображает HTML в браузере пользователя, используя шаблон HTML. Поскольку VB6 не включает редактор HTML, вам необходимо создать шаблон HTML вне VB6 (конструктор DHTML VB6 не имеет никакого отношения к WebClass). любой HTML-редактор, но поскольку Visual Studio включает Visual InterDev (VID) 6.0, VID является разумным выбором.
Установите Visual Studio в качестве редактора HTML по умолчанию для Visual Basic в меню «Инструменты | Параметры» VB6. В поле «Дополнительно» заполните поле. следующий путь Visual InterDev — C:Promram FilesMicrosoft Visual StudioCommonIDE|IDE98Devenv.exe во внешнее поле редактирования HTML. Вы уведомите Visual InterDev о необходимости создания файла шаблона для вашего проекта. Например: если ваш шаблон. называется WebPage.htm, то InterDev создает копию с именем Web1Page.htm. Если вы используете Блокнот или другие редакторы для создания шаблона, учтите это
в коде процедуры, файл SimpleReg.htm представляет собой шаблон, созданный Visual. InterDev На левой панели дизайнера WebClass выберите папку HTML Template WebItem. Вы можете добавить шаблон SimpleReg в проект следующим образом: нажмите кнопку «Добавить HTML-шаблон WebItem» и выберите «Выбрать файл SimpleReg.htm» в диалоговом окне выбора файла. (см. рис. 1). Назовите новый элемент WebItem tplSimple. Дважды щелкните tplSimple, чтобы просмотреть код WebClass. Найдите процесс WebClass_Start и замените исходный сгенерированный код следующим кодом, чтобы отобразить шаблон при загрузке WebClass:
Private Sub WebClass_Start(. )
'Показать основной HTML-шаблон www.downcodes.com
Session("Title") = "Введите свою" и "Регистрационную информацию"
tplSimple.WriteTemplate
End Sub
WebClass_Start аналогичен процессу Form_Load традиционного приложения VB. Запустите программу и просмотрите HTML-страницу, отображаемую в браузере. Выйдите из браузера и завершите работу приложения VB (это обычное завершение работы во время отладки и разработки). WebClass).
В конструкторе веб-классов щелкните правой кнопкой мыши tplSimple WebItem и выберите «Редактировать шаблон HTML» в контекстном меню. Вы увидите страницу шаблона в редакторе HTML по умолчанию. Прочитав исходный код, вы увидите: «Это простой метод». страница, состоящая из трех специальных частей, называемых тегами, в следующем формате:
< WC@TAGTITLE>Title</WC@TAGTITLE >
Текстовая часть этих тегов («Title») изменяется вами во время выполнения. Код, добавленный в WebClass, заменяется. При выполнении метода WriteTemplate он вызывает специальную процедуру ProcessTag один раз для каждого тега, найденного в шаблоне HTML. Вернувшись в VB, дважды щелкните tplSimple WebItem, чтобы отобразить окно кода. В окне кода выберите процесс tpSimple_ProcessTag. верхнем поле со списком и добавьте следующий код:
Dim sHTM As String
Выберите имя тега дела
Кейс " WC@TAGTITLE "
TagContents =Сессия("Название")
Кейс " WC@TAGMAIL "
sHTM = "Введите адрес электронной почты:<br>"
sHTM = sHTM & «<тип ввода= 'текст'»
sHTM = sHTM & " name= 'Электронная почта'><br>"
TagContents = SHTM
Дело " WC@TAGNAME "
sHTM = "Имя:<br>"
sHTM = sHTM & «<тип ввода= 'текст'»
sHTM = sHTM & " name= 'Name'><br>"
TagContents = SHTM
End Select
возвращает HTML-код в параметре TagContent для замены тега. Установите точку останова в tplSimple. Добавьте WriteTemple в процедуру WebClass_Start и запустите приложение. В точке останова используйте клавишу F8, чтобы просмотреть порядок событий. Вы увидите, что процедура ProcessTag вызывается три раза — по одному разу для каждого тега в шаблоне. Самое интересное: во время выполнения процедура будет использовать HTML, который будет генерировать текстовое поле в браузере. Код заменяет электронную почту. Теги имен
Возможность интерактивной отладки кода событий на стороне сервера — одна из очень мощных функций разработки приложений WebClass с помощью VB. В веб-разработке VB5 завершена реализация VBScript в сценариях ASP. Отладку VBScript выполнить невозможно. в интерактивном режиме в сценариях ASP - единственный возможный способ, к сожалению, - это ошибка и попытка еще раз. Однако в VB6 весь серверный код выполняется в WebClass, и вы можете использовать превосходную среду разработки VB для интерактивной отладки.
Подключение события
Следующий шаг в этом простом приложении. заключается в добавлении кода обработки событий для кнопки «Зарегистрировать меня» в форме. Вернитесь в конструктор VB WebClass и щелкните tplSimple WebItem. На правой панели вы увидите список элементов HTML на странице, и вы можете связать с ними события. Щелкните правой кнопкой мыши тег Form1 и выберите пункт меню «Подключиться к пользовательскому событию» и обратите внимание, что рядом с именем события Form1 в столбце «Цель» быстро просмотрите шаблон HTML (щелкните правой кнопкой мыши tplSimple и выберите «Редактировать шаблон HTML»). Найдите члены формы. Теперь они выглядят так:
<FORM метод = 'post' action = SimpleReg.ASP?
&WCE=RegisterMe&WCU>
SimpleReg.asp — это специальный сценарий запуска ActiveXDLL. Значение после вопросительного знака указывает, что элемент WebClass (WCI) — tplSimple, событие WebClass (WCE) — RegisterMe, а URLData (WCU) WebClass — пусто. Когда пользователь нажимает кнопку «Зарегистрировать меня» в браузере, эта строка активирует кнопку tplSimple_RegisterMe в DLL сервера ActiveX. Таким образом, активность формы привязана к событию на стороне сервера, но вы можете установить гиперссылку. в браузере для активации событий на сервере. Веб-классы работают как волшебство при разработке веб-приложений — они расширяют возможности программирования, управляемого событиями, на приложения на основе браузера.
Дважды щелкните событие RegisterMe на левой панели VB Designer, чтобы отобразить код. window Добавьте в событие следующий код:
If Len(Request.Form("Email")) = 0 Тогда.
Session("Titile") = "Пожалуйста" и "Введите адрес электронной почты!"
Сессия("Электронная почта") = ""
Сессия("Имя") = ""
Еще
Session("Title") = "Здесь" и "Ваша запись!"
Сессия("Электронная почта") = Request.Form("Электронная почта")
Сеанс("Имя") = Запрос.Форма("Имя")
Конец, если
TplSimple.WriteTemplate
Request.Form — это стандартный способ возврата данных со страницы браузера. Он устанавливает некоторые переменные сеанса и повторно отображает ту же HTML-страницу. Установите точку останова в операторе If и запустите проект. Введите адрес электронной почты и имя, щелкните. кнопку «Зарегистрировать меня». Вы увидите, что заголовок обновился, но текстовое поле пусто. Это связано с тем, что вы не ввели соответствующие значения для них при написании шаблона. Завершите проект и измените tplSimple_ProcessTag.
процесс (Загрузите листинг 1 с DevX; подробности см.
в разделе «Загрузить бесплатный код»). Присвойте значение текстовому полю на основе переменной сеанса. Запустите проект и посмотрите, что произойдет.
Используйте ADO для доступа к данным
.для хранения и хранения суммы из базы данных. Для простоты мы используем Microsoft Acess 97 в качестве нашей базы данных. Создайте новую базу данных с помощью Acess в исходном каталоге и назовите ее Register.mdb. Добавьте таблицу с двумя полями. соответственно «Электронная почта» и «Имя» и сохраните их на диск. Когда Acess предложит вам создать уникальное индексное поле, выберите «ОК» и поместите копию Register.mdb в корневой каталог вашего диска C.
В проекте добавьте Microsoft ActiveX. Ссылки на библиотеку объектов данных вы можете найти в разделе Project|Reference.... Вы можете использовать библиотеку ADO версии 1.5 или 2.0. Если у вас не установлена библиотека ADO, вы можете загрузить ее с сайта Microsoft: http:/. /www.microsoft.com/data Загрузите набор средств установки MDAC2.0 из /ado. Измените код в процессе tplSimple.RegisterMe (загрузите листинг 2 с сайта DevX; подробности см. в разделе «Загрузка бесплатного кода»)
. в форме в переменную Session., затем откройте набор записей ADO и найдите адрес электронной почты (загрузите листинг 3 из DevX).
Если он найден, код вернет новую запись. функция устанавливает строку подключения:
частная функция Connect() как строка
'Возвращаем строку подключения ADO
Const kDB = "DBQ=c:register.mdb;"
Const kDrv = "Drive={Microsoft" и "Драйвер доступа (*.mdb)}"
Подключиться = kDB и kDrv
Завершить функцию
Установите точку останова в tplSimple_RegisterMe, запустите программу и посмотрите, как работает код доступа к данным. Этот простой пример показывает, насколько просто программирование в ADO. Не забудьте настроить его в своей компании. Любое «реальное» приложение должно включать обработку ошибок. Вообще говоря, вы также будете использовать регистрацию для сохранения переменных, таких как информация о строке подключения, и вам нужно будет предоставить способ обновления записей и удаления ненужных записей.
При компиляции проекта произойдет две вещи: например. Для любого проекта ActiveX в VB на компьютере разработки будет создана запись ActiveX DLL. Во-вторых, будет создан специальный файл запуска ASP, названный по имени, указанному в атрибуте NameInURL. файла: SimpleReg.asp. Посмотрите сценарий в Блокноте. Когда пользователь вводит URL-адрес файла в браузере, IIS создает экземпляр SimpleReg.wcSimple WebClass. Microsoft рекомендует не изменять этот сценарий ASP. при любых обстоятельствах.
С точки зрения пользователя регистрация версии приложения WebClass аналогична серии, показанной в мае 1998 года. Код для этой серии действительно похож на серию, показанную ранее, за исключением того, что теперь весь код включен в версию. WebClass и запущенный файл ASP не содержат никакой пользовательской информации.
Примечания.
Сравнение приложения до и после, вы должны иметь четкое представление о том, как работает WebClass. Однако вы все равно можете не захотеть немедленно преобразовать свое веб-приложение в WebClass.
Преобразование приложения занимает значительное время, но вам следует это сделать, потому что это дает реальные преимущества.Например
: WebClass позволяет создавать или расширять приложения способами, которые раньше были невозможны.
набор инструментов для разработки интернет-приложений. Конечно, он разработан с использованием VB5. Веб-приложения также возможны, но вам придется использовать множество небольших программных трюков, чтобы сценарий ASP правильно взаимодействовал с VB DLL без ограничений. Благодаря VBScript нет недостатка в настоящей среде программирования, управляемой событиями. WebClass обеспечивает полную функциональность веб-разработки - и это хорошо.