ASP Global.asa
Global.asa файл
Global.asa файл представляет собой опциональный файл, который может содержать декларации подлежат приложения ASP каждая страница, доступ к которым переменные и методы.
Все законные сценарии браузера (JavaScript, VBScript, JScript, PerlScript и т.д.) могут быть использованы в Global.asa.
Global.asa файл может содержать только следующее:
- События приложений
- сессия Событие
- <Объект> Заявление
- TypeLibrary Заявление
- #include директивы
Примечание: Global.asa файл должен быть сохранен в корневом каталоге приложения ASP, и каждое приложение может иметь только один файл Global.asa.
события GLOBAL.ASA
В Global.asa вы можете сказать, объекты приложения и сеанса, когда приложение / сеанса начала, что делать, что делать, когда конец приложения / сессии. Код для выполнения этой задачи помещается в обработчик событий. Global.asa файл может содержать четыре типа событий:
Application_OnStart - Это событие происходит , когда пользователь вызывает первую ASP приложений первую страницу.Это событие будет перезапустить веб-сервер или происходит после того, как файл Global.asa редактируется. "Session_OnStart" событие происходит после того, как это событие происходит немедленно.Session_OnStart - Это событие происходит всякий раз , когда новый пользователь запрашивает его (ее) в приложении ASP на первой странице.
Session_OnEnd - Это событие происходит каждый раз , когда сеанс конечного пользователя.Если пользователь не запрашивает страницу, сеанс пользователя завершится в течение заданного времени (время по умолчанию составляет 20 минут).
Application_OnEnd - Это событие после того, как пользователь заканчивает свою сессию в последний раз происходит.Как правило, данное событие происходит, когда веб-сервер остановлен. Эта подпрограмма используется после того, как приложения, чтобы остановить настройки продувки, например, удалять записи или записи информации в текстовый файл.
Файл Global.asa может выглядеть следующим образом:
sub Application_OnStart
'some code
end sub
sub Application_OnEnd
'some code
end sub
sub Session_OnStart
'some code
end sub
sub Session_OnEnd
'some code
end sub
</script>
Примечание: Так как мы не можем использовать разделители сценариев ASP (<% и%>) вставки скриптов в файле Global.asa, нам нужно обрабатывать обычные помещенный в HTML <скрипт> внутри элемента.
<Объект> Заявление
Может ли тег <объект> создавать объекты с сессии или в области действия приложения Global.asa файл используя.
Примечание: <объект> тег должен быть в <скрипт> тег вне!
грамматика
....
</object>
参数 | 描述 |
---|---|
scope | 设置对象(Session 或 Application)的作用域。 |
id | 为对象指定一个唯一的 id。 |
ProgID | 与 ClassID 关联的 id。ProgID 的格式是:[Vendor.]Component[.Version]。
ProgID 或 ClassID 必需被指定。 |
ClassID | 为 COM 类对象指定一个唯一的 id。 ProgID 或 ClassID 必需被指定。 |
примеров
Первый экземпляр с помощью параметра ProgID для создания объекта области видимости сессии под названием "MyAd" из:
</object>
Второй экземпляр создается с помощью область применения параметров ClassID объектов, называемых "MyConnection" из:
classid="Clsid:8AD3067A-B3FC-11CF-A560-00A0C9081C21">
</object>
Объекты, объявленные в файле Global.asa может быть любой скрипт приложения:
<object runat="server" scope="session" id="MyAd" progid="MSWC.AdRotator">
</object>
您可以从 ASP 应用程序中的任意页面引用 "MyAd" 对象:
某个 .ASP 文件:
<%=MyAd.GetAdvertisement("/banners/adrot.txt")%>
TypeLibrary Заявление
TypeLibrary (библиотека типа) представляет собой контейнер, содержащий соответствующие COM-объект DLL файлы. В том числе вызов TypeLibrary в файле Global.asa, вы можете получить доступ к константы объекта COM, а код ASP также лучше иметь возможность сообщать об ошибках. Если веб-приложение использует типы данных COM-объектов, заявленных в библиотеке типов, вы можете ввести библиотеки в заявлении Global.asa.
грамматика
file="filename" uuid="id" version="number" lcid="localeid"
-->
参数 | 描述 |
---|---|
file | 规定指向类型库的绝对路径。
file 参数或者 uuid 参数,两者缺一不可。 |
uuid | 规定了类型库的唯一的标识符。
file 参数或者 uuid 参数,两者缺一不可。 |
version | 可选。用于选择版本。如果没有找到需要的版本,将使用最接近的版本。 |
lcid | 可选。用于类型库的地区标识符。 |
значение ошибки
Сервер возвращает одно из следующее сообщение об ошибке:
错误代码 | 描述 |
---|---|
ASP 0222 | 无效的类型库规范 |
ASP 0223 | 没有找到类型库 |
ASP 0224 | 无法加载类型库 |
ASP 0225 | 无法包装类型库 |
Примечание: Тег метаданныхв файл Global.asa в любом месте (внутри и снаружи <сценарий> тег может быть) появляется. Тем не менее, мы по-прежнему рекомендуем МЕТАДАННЫХ тег помещается в верхней части файла Global.asa.
ограниченной
О файле Global.asa можно ссылаться в содержании определенного:
- Global.asa файл, который вы не можете отобразить текст. Этот файл не может отображать информацию.
- Вы можете использовать только сервер и приложений объекты Application_OnStart и Application_OnEnd подпрограммами. В подпрограмме Session_OnEnd, вы можете использовать серверов, приложений и объекты Session. В подпрограмме Session_OnStart, вы можете использовать любой встроенный объект.
Как пользоваться подпрограммами
Global.asa обычно используется для инициализации переменных.
В следующем примере показано, как определить точное время посетителей веб-сайта впервые приходят. Время хранится в объекте Session под названием "начал" в, а значение "начала" переменная может быть любой вид ASP страница приложения:
sub Session_OnStart
Session("started")=now()
end sub
</script>
Global.asa также может быть использован для контроля доступа к странице.
В следующем примере показано, как перенаправить каждого нового посетителя на другую страницу, в данном случае будут направлены на страницу "newpage.asp" под названием:
sub Session_OnStart
Response.Redirect("newpage.asp")
end sub
</script>
Вы можете включать в себя функции в файле Global.asa.
В следующем примере, при запуске веб-сервера, Application_OnStart подпрограмма запустится. Затем Application_OnStart вызывает другую подпрограмму под названием "GetCustomers" подпрограммой. "GetCustomers" подпрограмма открывает базу данных и извлекает запись набора из таблицы "клиентов". Эта запись присваивается массив сборки, без запросов к базе данных, любые ASP страниц для доступа к этому массиву:
sub Application_OnStart
getcustomers
end sub
sub getcustomers
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs=conn.execute("select name from customers")
Application("customers")=rs.GetRows
rs.Close
conn.Close
end sub
</script>
примеры GLOBAL.ASA
В этом примере мы создадим вычисление текущего числа посетителей Global.asa файла.
- При запуске сервера, Application_OnStart установите переменную Application "посетителей" 0.
- Всякий раз, когда новые посетители приходят в гости, Session_OnStart подпрограмма будет переменной "посетителей" плюс один.
- Всякий раз, когда Session_OnEnd подпрограмма вызывается подпрограмма будет вычесть из переменной "посетителей" 1.
Global.asa файл:
Sub Application_OnStart
Application("visitors")=0
End Sub
Sub Session_OnStart
Application.Lock
Application("visitors")=Application("visitors")+1
Application.UnLock
End Sub
Sub Session_OnEnd
Application.Lock
Application("visitors")=Application("visitors")-1
Application.UnLock
End Sub
</script>
В файле ASP, который отображает текущее количество посетителей:
<html>
<head>
</head>
<body>
<p>There are <%response.write(Application("visitors"))%> online now!</p>
</body>
</html>