いくつかの目的を実行するために一緒に働くASPファイルのグループには、アプリケーションと呼ばれています。
アプリケーションオブジェクト
Web上のアプリケーションは、いくつかの目的を実行するために一緒に働く複数のASPファイルから構成されてもよいです。 Applicationオブジェクトは、これらのファイルを一緒に結び付けるために使用されています。
Applicationオブジェクトは、単にSessionオブジェクトと同様に、任意のページから変数を格納し、アクセスするために使用されます。 違いは、すべてのユーザーがONE Applicationオブジェクトを共有することである(with Sessions there is ONE Session object for EACH user) 。
Applicationオブジェクトは、アプリケーション内の多くのページで使用される情報を保持(like database connection information) 。 情報がどのページからでもアクセスすることができます。 情報は、一つの場所に変更することができ、変更は自動的にすべてのページに反映されます。
アプリケーション変数を格納および取得
アプリケーション変数は、アプリケーションにアクセスすると、任意のページで変更することができます。
あなたには、アプリケーション変数を作成することができます"Global.asa"このように:
<script language="vbscript" runat="server">
Sub Application_OnStart
application("vartime")=""
application("users")=1
End Sub
</script>
:例では、2つのアプリケーション変数に作成した上で"vartime"と"users" 。
あなたはこのようなアプリケーション変数の値にアクセスできます。
There are
<%
Response.Write(Application("users"))
%>
active connections.
目次コレクションをループ
目次コレクションは、すべてのアプリケーション変数が含まれています。 あなたは目次コレクションをループは、それに保存されているかを確認することができます。
<%
dim i
For Each i in Application.Contents
Response.Write(i & "<br>")
Next
%>
あなたがコンテンツコレクション内の項目数がわからない場合は、Countプロパティを使用することができます。
<%
dim i
dim j
j=Application.Contents.Count
For i=1 to j
Response.Write(Application.Contents(i) & "<br>")
Next
%>
StaticObjectsコレクションをループ
あなたはStaticObjectsコレクションをループ、Applicationオブジェクトに格納されているすべてのオブジェクトの値を参照するには次のことができます。
<%
dim i
For Each i in Application.StaticObjects
Response.Write(i & "<br>")
Next
%>
ロックとロック解除
あなたがアプリケーションをロックすることができ"Lock"方法。 アプリケーションがロックされている場合、ユーザーは(現在はそれにアクセスする以外の)アプリケーション変数を変更することはできません。 あなたがアプリケーションのロックを解除することができ"Unlock"する方法。 この方法は、アプリケーション変数からロックを削除します。
<%
Application.Lock
'do some application object operations
Application.Unlock
%>