ASP - Объявления <OBJECT>
С помощью расширенного тега <OBJECT> можно создать в файле Global.asa объекты, имеющие областью определения сеанс или приложение. Этот тег является законченным и находится вне тегов <SCRIPT>.
Объекты, объявленные в файле Global.asa, не создаются до обработки сервером сценария, вызывающего этот объект. Это экономит ресурсы, создавая только необходимые объекты.
Синтаксис
<OBJECT RUNAT=Server SCOPE=ОбластьОпределения ID=Идентификатор {PROGID="ИдентификаторПрограммы"|CLASSID="ИдентификаторКласса"}>
. . .
</OBJECT>
Параметры
ОбластьОпределения
Указывает область определения объекта. В файле Global.asa параметр ОбластьОпределения может принимать значение Session или Application.
Идентификатор
Указывает имя экземпляра объекта.
ИдентификаторПрограммы
Идентификатор, связанный с идентификатором класса. В теге <OBJECT> должен быть указан ИдентификаторПрограммы или ИдентификаторКласса. Формат ИдентификатораПрограммы — [Поставщик.]Компонент[.Версия].
ИдентификаторКласса
Указывает уникальный идентификатор объекта класса COM. В теге <OBJECT> должен быть указан ИдентификаторПрограммы или ИдентификаторКласса.
Примеры
В первом из приведенных ниже примеров с помощью параметра ИдентификаторПрограммы создается объект с сеансом в качестве области определения, названный MyConnection
во втором примере используется параметр ИдентификаторКласса.
<OBJECT RUNAT=Server SCOPE=Session ID=MyConnection
PROGID="ADODB.Connection">
REM Object Script
</OBJECT>
<OBJECT RUNAT=Server SCOPE=Session ID=MyConnection
CLASSID="Clsid:8AD3067A-B3FC-11CF-A560-00A0C9081C21">
REM Object Script
</OBJECT>
Примечания
Объекты, объявленные в файле Global.asa, могут быть использованы любым сценарием в приложении. Например, если объявлен следующий объект.
---GLOBAL.ASA---
<OBJECT RUNAT=Server SCOPE=Session ID=MyAd PROGID="MSWC.AdRotator">
</OBJECT>
Можно сослаться на объект MyAd
с любой страницы в приложении:
---SOME.ASP---
<%= MyAd.GetAdvertisement("/ads/adrot.txt") %>