Далее мы напишем очень простой компонент. Основное внимание уделяется умению разрабатывать компоненты DLL, а не ее сложному коду. Все это будет зависеть от ваших собственных усилий в будущем. Напишите небольшой компонент (Введение в компоненты).
Эта статья в основном написана для людей, которые хотят повысить свой уровень ASP! Превратив код ASP в компоненты, разработчики не только ускоряют ASP, но и защищают свой собственный код. Целью написания этой статьи является также предоставление вводного урока пользователям сети. кто хочет разрабатывать компоненты!
Далее мы напишем очень простой компонент. Основное внимание уделяется умению разрабатывать компоненты DLL, а не ее сложному коду. Все это будет зависеть от ваших собственных усилий в будущем!
Серверные компоненты
Прежде всего, серверные компоненты должны отличаться от клиентских компонентов. Клиентские компоненты передаются по сети и функционируют на основе HTML. Их можно использовать только в IE. Но серверные компоненты выполняются в IE. на стороне сервера и выполняются на сервере. Таким образом, все браузеры могут использовать его, и он зависит от сервера, а не от браузера.
Когда IIS запрашивается на выполнение программы ASP, он сначала находит код между тегами в файле ASP и выполняет его (это также может быть код между ними. Если программа ASP вызывалась ранее, он будет использовать тег). скомпилированная программа в памяти для возврата HTML-кода пользователю. Здесь ASP имеет небольшое преимущество в скорости по сравнению с CGI, поскольку CGI использует поток для каждого запроса.
Вы когда-нибудь думали, что написанная вами программа может работать в IIS!?! Вы можете сделать это сейчас! Используя VB5 (теперь, конечно, VB6), вы можете создавать динамически связанные библиотеки (DLL-файлы), которые могут работать непосредственно в IIS (если есть файл asp для запроса).
Требования к системе и программному обеспечению
Для запуска ASP вам потребуется 32-битная операционная система. Конечно, вам также необходимо установить IIS или PWS. Наша следующая программа была разработана в среде Windows95+PWS+VB5.
давайте начнем
Запустите VB и выберите значок ActiveX. Этот значок можно найти в новом проекте! VB предоставит имя проекта по умолчанию (project1) и имя класса (class1). Перед изменением имени сначала подтвердите. что у нас есть библиотека объектов Microsoft Active Server Pages, которая очень полезна в нашей программе. В меню выберите «Проект», затем выберите «Ссылки», появится справочное окно, выберите «Библиотека объектов Microsoft Active Server Pages».
Назовите проекты и классы
Теперь давайте назовем проект1 и класс1 в соответствии с нашими увлечениями! Присвоение им имен также очень важно. Мы будем использовать это имя проекта и имя класса для создания экземпляров этого компонента в будущем!
Я не хочу больше говорить о том, как изменить свое имя!
Имя нашего проекта было изменено на Exmaple, а имя класса — Helloword.
Как использовать проекты и классы
Теперь у нас есть собственный проект (Пример1) и имя класса (HelloWorld). Мы будем использовать их имена в коде ASP для обращения к этому компоненту в будущем. В ASP мы будем обращаться к нему следующим образом:
Установите ObjReference = Server.CreateObject(ProjectName.ClassName)
Ссылка на наш проект:
Установите ObjReference = Server.CreateObject(Example1.HelloWorld)
Теперь мы можем использовать ObjReference для вызова функций и подпрограмм, которые мы создали в компоненте. Далее мы напишем подпрограмму SayHello. Наш код для ее выполнения следующий:
Чтобы использовать методы ASP в классе Helloword, вы должны написать OnStartPage в этом классе.
Подфункция следующим образом:
Public Sub OnStartPage (PassedscriptingContext As scriptingContext)
Установить MyscriptingContext = PassedscriptingContext
Конец субтитра
Теперь, когда пользователь обращается к файлу ASP с помощью этого компонента, IIS передает scriptingContext нашему объекту, который мы можем использовать. Этот scriptingContext включает в себя все методы и свойства ASP. Реализация дает нам возможность доступа ко всем объектам ASP. следующий код:
Скопируйте код кода следующим образом:
Public Sub OnStartPage (PassedscriptingContext As scriptingContext)
Установить MyscriptingContext = PassedscriptingContext
Установите MyApplication = MyscriptingContext.Application
Установите MyRequest = MyscriptingContext.Request
Установите MyResponse = MyscriptingContext.Response
Установите MyServer = MyscriptingContext.Server
Установите MySession = MyscriptingContext.Session
Конец субтитра
В будущем мы можем использовать MyApplication в VB для замены Application в ASP. Точно так же мы можем заменить Request, Server..., но нам придется объявить эти переменные перед OnStartPage:
Скопируйте код кода следующим образом:
Частный MyscriptingContext Как scriptingContext
Частное MyApplication как приложение
Частный мой запрос как запрос
Частный MyResponse как ответ
Частный MyServer как сервер
Частный MySession как сеанс
Объекты, использующие ASP
Наши переменные теперь можно использовать как стандартные объекты ASP. Например, мы часто используем Request.form() в ASP для сбора данных для отправленных форм. Теперь мы реализуем эту функцию в нашем VB, код выглядит следующим образом:
Реализовано в ASP:
Реализовано в VB:
Скопируйте код кода следующим образом:
MyTempVariable = MyRequest.Form(имя пользователя)
MyResponse.Write (вы ввели & MyTempVariable & в качестве имени пользователя)
Используя MyResponse вместо Response, мы можем использовать все методы Response. Конечно, имя MyResponse может быть каким угодно, вы даже можете просто использовать Response.
Еще одна вещь, на которую мы должны обратить внимание, это то, что мы должны написать подфункцию OnEndPage в созданном нами классе. Эта функция OnStartPage является противоположностью! OnStartPage создает объекты, а OnEndPage уничтожает объекты.
Скопируйте код кода следующим образом:
Публичная подписка OnEndPage()
Установить MyscriptingContext = Ничего
Установите MyApplication = Ничего
Установите MyRequest = Ничего
Установите MyResponse = Ничего
Установить МойСервер = Ничего
Установить MySession = Ничего
Конец субтитра
Метод SayHello
Давайте создадим подфункцию для отображения Holle World. Этот метод SayHello — это всего лишь подфункция класса HelloWorld. Мы будем использовать следующий метод для отображения этого метода в ASP в будущем.
Программа SayHello очень проста!
Скопируйте код кода следующим образом:
Публичная подписка SayHello()
MyResponse.Write(Привет, мир)
Конец субтитра
Теперь, когда небольшой компонент написан, осталось скомпилировать его и сохранить в меню проекта. Вы можете дать ему любое имя. Давайте использовать Exmaple1.vbp. Затем выберите в меню make exmaple1.dll и добавьте его. компилируется в DLL-файл. Компонент действительно завершен!
Обратите внимание, что после компиляции этого компонента необходимо сначала отключить PWS, а затем скомпилировать этот компонент. В противном случае VB сообщит вам, что некоторые компоненты используются.
Используйте наши собственные компоненты в ASP.
Когда вы исправили ошибки компиляции и успешно скомпилировали проект example1, теперь вам нужно достать ваш любимый HTML-редактор, чтобы написать следующий оператор и сохранить его как файл ASP.
Вы можете увидеть результаты после запуска:
Привет, мир
Зарегистрировать компонент
Если вы хотите поделиться своими компонентами с друзьями и соседями, вам необходимо зарегистрировать свои компоненты в своей системе. Обычно мы используем Regsvr32.exe для регистрации компонентов. После регистрации ваши компоненты появятся в Win95/Win98 в Windows/system. Каталог Ниже приведен пример регистрации:
Regsvr32.exe C:/wwwroot/Example1/Example1.dll
В вашей системе VB автоматически зарегистрирует его, поэтому вы редко используете Regsvr32.exe.
Мы только что написали здесь очень маленький компонент. Вы можете писать свои собственные более крупные компоненты, а также использовать множество элементов управления в VB.
Давайте использовать компоненты для расширения функциональности нашей программы. Я также надеюсь увидеть больше компонентов от нас, китайцев!