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

1 ... 112 113 114 [ 115 ] 116 117 118 ... 141


library

(unique)

Рис. 8-8. Добавление нового

Раскройтепапку интерфейсаIBookStoreLogin, а.;тм щелкните правой клавишей мыши строку riKMikStorsLcqin. Затем выберите из контекстного меню строку Add Property, как это показано на рис. 8-8 (строка Add Method позволяет добавить новый метод).

На появится иане.н. Add Property to Interface, показанная на рис. 8-9.

Так как наше свойство предназначено для хранения строк, выберите тип в списке Property lypca определяющем тип свойства.

13 Property Name Вы должны ввести имя свойства. В нашем случае это имя , Ч,

в иоле Parameters необходимо указать параметры метода, разделив их запятой. Укажите здесь параметры bsName и типа BSTR*. Первый параметр представляет собой указатель на строку BSTR с ... ля, а второй - указатель на строку BSTR с паролем пользователя.

Как Вы, наверное, знаете, для каждого свойства можно определить две функции, первая из которых предназначена для чтения содержимого свойства, а вторая - для записи в свойство нового значения. Чтобы мастер создания свой-

ActiveX будут построены. А надо определить собственные методы и свойства.

Определение нового свойства

Сначала мы определим свойство с именем ClieckResult, получающее в качестве параметров две входные текстовые строки и возвращающее выходную текстовую строку, созданную входных строк.

Откройте вкладку . . -в главном окне Microsoft Visual С++ (рис. 8-8).



Базы

в tmmm Практическое руководство

отвя добавил исходный текст и необходимо отметить

соответствующей функции в Get Function и Put Function.

Рис. 8-9. Панель, предназначенная для добавления нового метода

В нашем примере мы создаем только одно свойство, предназначенное для чтения, поэтому надо отметить только один . Get Function. Сде-

лав это, щелкните кнопку ОК. В проект будет добавлен исходный текст метода ClieckResull. Чтобы увидеть i:ui исходный текст, раскройте папку интерфейса IBookStoreLogin, расположенную в . класса CbookStoreLegln, и дважды щелкните название метода 8et Chi3ck.,c;.u.n.. Вот что Вы увидите:

BSTR - BSTR return li 01;

BSTR

Редактирование исходного текста свойства

Добавьте в определение метода следующие строки:

== NULL)

rcl 1;

IpszName);



CComBSTR bstrTemp;

bstrTemp = A20LE{32Bij

return : Штх

pOiitVttI - . ,

Макрокоманда USES CONVERSION используется для обозначения того факта, что нагл метод будет применять строк BSTR н формат обычных строк

ASCII, закрытых двоичным нулем, причем для перекодировки будут применяться макрокоманды 0LE2A и A20LE. Первая из них предназначена для преобразования строк BSTR в строки ANSI, а вторая выполняет обратное действие.

В начале своей работы добавленный кода проверяет указатель

pOiitVal. передаваемый методу для записи значения свойства. Если он равен NULL метод завершает свою работу с соответствующей ошибкой.

Далее мы преобразуем входные параметры . и . в обычные

текстовые строки ANSI, записывая указатели на результат . со-

ответственно в поля класса IpszName и IpszPaESWorcl. Эти поля типа LPSTR Вам надо добавить самостоятельно в класс CBookStoreLogin обычным образом.

После преобразования наш метод копирует входные строки в буфер szBut. разделяя их двоеточием.

Для преобразования результата в тип BSTR мы создаем указатель

DstrTeip типа CComBSTR и - в него результат преобразования, выпол-

ненного макрокомандой A20LE. Если оно выполнено с ошибкой, в указатель batfTeinp будет записано нулевое - В этом случае метод возвращает код

ошибки, означающий отсутствие необходимого объема свободной памяти.

Чтобы вернуть значение свойства, мы вызываем метод Detach, определенный в классе CComBSTR, На этом работа метода закончена.

Добавив описанные выше строки в определение метода запустите проект на трансляцию. Созданный в виде библиотеки DLL элемент управления будет зарегистрирован и доступен для вызова. Если этот файл Вы предполагаете использовать на другом компьютере, его нужно зарегистрировать при помощи программы REGSVR32, передав ей путь к файлу DLL. Запустив программу . С: без параметров. Вы увидите на экране краткую инструкцию

Подготовка страницы ASP

Теперь мы подготовим страницу ASP, вызывающую созданный нами серверный элемент аараааання ActiveX.

На самом деле мы создадим две страницы- Первая из них представляет собой обычный документ HTML с формой, в которой посетитель вводит свой идентификатор и пароль (рис. 8-iO).

Если после ввода информации щелкнуть кнопку Вход, управление будет передано странице ASP, вызывающей наш элемент управления ActiveX. На этой странице отображается строка, сформированная элементом BookStoraLPiln (рис. 8-iL).



1 ... 112 113 114 [ 115 ] 116 117 118 ... 141

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