Il file Global.asa è un file opzionale che può contenere dichiarazioni di oggetti, variabili, e metodi che posso essere accessi da tutte le pagine in una applicazione Asp.
Il file Global.asa
Il file Global.asa è un file opzionale che può contenere dichiarazioni di oggetti, variabili, e metodi che posso essere accessi da tutte le pagine in una applicazione Asp. Tutti gli script validi di browser (JavaScript, JScript, VBScript, PerlScript, etc.) possono essere utilizzati dentro Global.asa.
Il file Global.asa può contenete soltanto:
1.
Comandi #include
2.
Eventi di applicazione
3.
Eventi si sessione
4.
Dichiarazioni <object>
5.
Dichiarazioni TypeLibraray
Il file Global.asa deve essere salvato nella root directory dell’applicazione Asp, ed ogni applicazione può avere solo un file Global.asp.
Eventi nel Global.asa
Nel Global.asa puoi riferire all’applicazione e agli oggetti di sessione che cosa fare quando l’applicazione/la sessione inizia e cosa fare quando l’applicazione/la sessione finisce. Il codice per tutto questo si trova nel event handlers. Il file Global.asa può contentere 4 tipi di eventi:
1.
Appliacation_OnStart
Questo evento accade quando il primo utente richiede la prima pagina di una applicazione Asp. Questo evento accade dopo che il Web server viene riavviato oppure dopo che il file Global.asa viene editato. L’evento “Session_OnStart” accade subito dopo questo evento.
2.
Application_OnEnd
Questo evento accade dopo che l'ultimo utente abbia finito la sessione. Di solito questo evento accade quando un server Web si ferma. Questa procedura viene utilizzata per pulire le impostazioni dopo che l’applicazione si sia fermata, come per esempio registrazioni oppure informazioni sui file testo.
3.
Session_OnStart
Questo evento accade tutte le volte quando un nuovo utente richiede la sua prima pagina in una applicazione Asp.
4.
Session_OnEnd
Questo evento accade ogni volta che un utente abbia finito la sessione. La sessione della pagina di un user termina quando l'user non rinfresca (refresh) o richiede la pagina dopo un determinato tempo, che di default è 20 minuti.
Un file Global.asa potrebbe essere cosi:
<script language="vbscript" runat="server">
sub Application_OnStart
'del codice
end sub
sub Application_OnEnd
'dell'altro codice
end sub
sub Session_OnStart
'dell'altro codice
end sub
sub Session_OnEnd
'dell'altro codice
end sub
</script>
Dichiarazioni <object>
E possibile creare degli oggetti per le sessioni e le applicazioni in Global.asa utilizzando il tag <object>.
Il tag <object> dovrebbe essere fuori dal tag <script> !
Sintassi
<object runat="server" scope="scope" id="id" {
="progID"|classid="classID"
} >
...
</object>
Parametri
Descrizione
scope
Stabilisce lo scopo del oggetto (sia Sessione sia Applicazione)
id
Specifica un id unico per l’oggetto
ProdID
Un id associato ad un id class. Il formato per ProdID è [Vendor.]Component[.Version]
ClassID
Specifica un unico id per un COM class oject. Sia ProdID oppure ClassID devono essere specificati.
L'sempio sotto crea un oggetto di sessione chiamato “MioAd” utilizzando il parametro ProdID:
Il TypeLibrary è un contenitore per gli elementi di un file DDL che corrisponde ad un oggetto COM. Includento l’invoacazione della TypeLibrary in un file Global.asa, le costanti dell'oggetto COM possono essere raggiunti, e gli errori possono essere meglio rapportati dal codice Asp. Se la vostra applicazione Web si basa sugli oggetti COM che hanno dichiarato i tipi di dato nelle biblioteche dei tipi, potete dichiarare le biblioteche dei tipi in un file Global.asa.
Sintassi
<!--METADATA TYPE="TypeLib"
file="nomeFile"
uuid="tipoLibreriaUuid"
version="numeroVersione"
lcid="idLocale"
-->
Parametri
Descrizione
file
Specifica un percorso assoluto ad una biblioteca dei tipi. Viene richiesto sia il parametro del file oppure il parametro uuid.
uuid
Specifica un identificatore unico ad una biblioteca dei tipi.
Viene richiesto sia il parametro del file oppure il parametro uuid.
version
Opzionale. Utilizzato per settare la versione. Se la versione richiesta non è trovata viene utilizzata la versione più recente.
lcid
Opzionale. L’identificatore da utilizzare per la biblioteca dei tipi.
I valori di errore
Il server può ritornare uno dei seguenti messaggi di errore:
Error Code
Description
ASP 0222
Specificazione di tipo di biblioteca invalida.
ASP 0223
Tipo di biblioteca non trovata.
ASP 0224
Tipo di biblioteca non può essere caricata.
ASP 0225
Tipo di biblioteca non può essere spostata.
I tag METADATA possono apparire in qualsiasi posto dentro al file Global.asa (sia dentro oppure fuori ai tag <script>). Tuttavia, è raccomandato che i tag METADATA appaino all’inizio del file Global.asa.
Restrizioni
1.
Non potete visualizzare il testo scritto nel file Global.asa. Questo file non può far visualizzare informazioni
2.
Potete utilizzare soltanto oggetti di Server e oggetti di Applicazioni nei “subroutine” (sottoprogrammi) Application_OnStart e Application_OnEnd. Nel Session_OnEnd potete utilizzare oggetti di Server di Applicazioni e oggetti di sessione. Nel Session_OnStart potete utilizzare soltato oggetti incorporati.