please dont rip this site
Platform SDK: IIS SDK
      [IIS 5.0] [IIS 5.1] [IIS 6.0]

Application Object

You can use the Application object to share information among all users of a given application. An ASP-based application is defined as all the .asp files in a virtual directory and its subdirectories. Because the Application object can be shared by more than one user, there are Lock and Unlock methods to ensure that multiple users do not try to alter a property simultaneously.


Application. method


Application.Contents Collection Contains all of the items that have been added to the application through script commands.
Application.StaticObjects Collection Contains all of the objects added to the session with the <OBJECT> tag.


Application.Contents.Remove Deletes an item from the Application object's Contents collection.
Application.Contents.RemoveAll Deletes all items from the Application object's Contents collection.
Application.Lock Prevents other clients from modifying Application object properties.
Application.Unlock Allows other clients to modify Application object properties.


Scripts for the following events are declared in the Global.asa file. For more information about these events and the Global.asa file, see the Global.asa Reference.

Application_OnEnd Event
Application_OnStart Event


You can store values in the Application Collections. Information stored in the Application collections is available throughout the application and has application scope. The following script demonstrates storage of two types of variables.


Application("greeting") =index.html "Welcome to My Web World!"

Application("num") = 25


Each of these variables are members of the Application.Contents Collection.

You can also assign a component instance to a variable that has application scope. If you assign a component instance to a variable with the Server.CreateObject method, the variable will be a member of the Application.Contents collection. If the variable is assigned with the <OBJECT> tag, the variable will be a member of the Application.StaticObjects Collection.

You should be careful about assigning component instances to variables with application scope because some components are not designed to be given application scope. For more information, see the Platform Software Development Kit (SDK).

If you assign a component instance to a variable in the Application.Contents Collection and use Microsoft® Visual Basic® Scripting Edition (VBScript) as your primary scripting language, you must use the Set keyword, as illustrated in the following script.

<% Set Application("Obj1") =index.html Server.CreateObject("MyComponent") %>

You can then reference the methods and properties of MyComponent on subsequent Web pages by using the following script:

<% Application("Obj1").MyObjMethod %>

Or you can reference the methods and properties of MyComponent on subsequent Web pages by extracting a local copy of the object and using the following script:


Set MyLocalObj1 =index.html Application("Obj1") 



Another way to create objects with application scope is by using the <OBJECT> tag in the Global.asa file. For more information, see the Global.asa Reference.

You cannot store a built-in object in the Application object. For example, each of the following lines returns an error.


Set Application("var1") =index.html Session

Set Application("var2") = Request

Set Application("var3") = Response

Set Application("var4") = Server

Set Application("var5") = Application

Set Application("var6") = ObjectContext


You should be aware of the threading model used by any components you give application scope. The threading model used to develop the component will have a significant impact on whether a component instance should be assigned to a variable in one of the Application collections.

For more information, see Component Design Guidelines.

If you store an array in an Application object, you should not attempt to alter the elements of the stored array directly. For example, the following script does not work:

<% Application("StoredArray")(3) =index.html "new value" %>

The preceding script does not work because the Application object is implemented as a collection. The array element StoredArray(3) does not receive the new value. Instead, the value is included in the Application object collection and overwrites any information that had previously been stored at that location.

It is strongly recommended that if you store an array in the Application object, you retrieve a copy of the array before retrieving or changing any of the elements of the array. When you are done with the array, you should store the array in the Application object again, so that any changes you made are saved, as shown in the following scripts.

--- File1.asp ---


'Creating and initializing the array.

dim MyArray()

Redim MyArray(5)

MyArray(0) =index.html "hello"

MyArray(1) = "some other string"

'Storing the array in the Application object.


Application("StoredArray") = MyArray




--- File2.asp ---


'Retrieving the array from the Application Object

'and modifying its second element.

LocalArray = Application("StoredArray")

LocalArray(1) = " there"

'Printing out the string "hello there."


'Re-storing the array in the Application object.

'This overwrites the values in StoredArray with the new values.


Application("StoredArray") = LocalArray




The following example uses the application variable NumVisits to store the number of times that a particular page has been accessed. The Lock method is called to ensure that only the current client can access or alter NumVisits. Calling the Unlock method then enables other users to access the Application object.



Application("NumVisits") =index.html Application("NumVisits") + 1




This application page has been visited 

<%= Application("NumVisits") %> times!

You can see a working sample .asp file that uses the Application object in the Building ASP Applications section of the Samples.


Platforms: Windows 2000 with IIS 5.0 installed, Windows XP with IIS 5.1 installed, Windows Server 2003 family with IIS 6.0 installed

Platform SDK Release: February 2003
What did you think of this topic?
Order a Platform SDK CD

file: /Techref/language/asp/obj/ref_vbom_apo.htm, 10KB, , updated: 2003/5/15 14:13, local time: 2024/7/16 05:07,

 ©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF=""> Application Object</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.

Link? Put it here: 
if you want a response, please enter your email address: 
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?


Welcome to!


Welcome to!